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

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

IBDataSet. [D6, FB]


Id ©   (2005-12-07 14:24:00) 

Здраствуйте,
Пытаюсь освоить IBDataSet.
В InsertSQL
insert into PR
 (id,FIRRST, SEC)
values
 (gen_id(G_ID_PR,1),:FIRRST, :SEC)
где ID Первичный ключ
Затем IbDataset.Insert
Заполняю, затем IbDataSet.Post
В Поле ID появляется нумерация не понятно как: например 42,44,46 и т.д.
Вопрос почему?


Johnmen   (2005-12-08 11:54:00) [1]

Да, именно так Digitman ©   (08.12.05 11:17) [4].
Возможно, выставлено AutoGenerateValue в True...


Digitman   (2005-12-08 11:17:00) [2]


> Id   (08.12.05 10:55) [3]


ну раз триггера нет, значит генератор дергается тобой в каком-то из событий компонента, связанном со вставкой записи ... например, BeforeInsert ... чудес-то не бывает)..


Id   (2005-12-08 10:55:00) [3]

>>Johnmen ©   (07.12.05 14:47) [1]
Триггера нет
Беспокою только сам :)


Deniz   (2005-12-08 07:23:00) [4]

Посмотри на триггер и поправь его:

...
if (new.id is null) then new.id = gen_id(G_ID_PR,1);
...


Johnmen   (2005-12-07 14:47:00) [5]

Потому, что генератор дёргается 2 (два) раза.
А значит, не надо его и самому и в триггере беспокоить...:)


Наверх

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