Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Инкрементирование поля [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


Наверх

Титульная страница Поиск, карта сайта Написать письмо