![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Генерация ID записи [D6, IB6.x]
Vemer © (2004-03-04 17:24:00)Здравствуйте.
Имееться таблица (лог), который дополняеться только через ХП. Я решил обойтись без триггера и написал примерно так:
Insert Into Log (Log_ID, ...)
Values (Gen_Id(Log_Gen,1),...)
Вопрос в нормальности данного решения и возможных "подводных" камнях..
kaif (2004-03-05 04:58:00) [1]Выходной параметр можно получить и без SUSPEND; В любом случае не мешает его иметь.
Решение совершенно нормальное. Никаких подводных камней нет.
VID (2004-03-04 21:15:00) [2]нет подводных камней - это хороший метод, а ещё к этой хп процедуре добавь выходной параметр, который будет возвращать сгенерированый ID
т.е.
begin
out_id = gen_id(log_gen, 1);
Insert Into Log (Log_ID, ...)
Values (:out_id,...);
suspend;
end;
разумеется out_id - это и есть выходной параметр.
Такое дополнение добавит твоей ХП больше гибкости и в дальнейшем может пригодиться (ты уж сам смотри...)
Anatoly Podgoretsky (2004-03-04 17:26:00) [3]Нормально, каждая запись будет иметь уникальный номер.