![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Инкрементирование поля [D6, Firebird]
MMN © (2004-11-01 21:01:00)Подскажите, пожалуйста, как правильно сделать авто инкрементирование поля номера по порядку (является первичным ключом).
(Я это сделал так: нашел последнюю запись, запомнил значение поля в переменную, инкрементировал переменную и записал значение переменной в новую запись. Но при одновременной работе нескольких клиентов происходит ошибка, связанная с первичным ключом.)
DrPass (2004-11-02 00:08:00) [1]create generator xxx
Если знать номер во время ввода записи необязательно, то
create trigger yyy for...
before insert
as begin
new.id = gen_id(xxx, 1);
end;
Если знать нужно, то
select gen_id(xxx, 1) from rdb$database;
и вставляешь куда требуется
Vemer (2004-11-01 23:42:00) [2]Есть в FAQ на DevPortal.Ru 2 варианта получения ID.
YurikGL (2004-11-01 22:44:00) [3]там есть генераторы для этого....
www.ibase.ru