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

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

Проблемы с Autoincrement полями в INTERBASE [D6, IB6.x]


msoftware ©   (2003-04-26 04:58:00) 

Дело тут такое. Уже упарился с этим TIBDataSet. Он ошибку сволочь выводит такую: Field "PERSONID" must have a value, что в дословном переводе означает: Хрен тебе мужик я запись вставлю только пока ты в поле PERSONID цифру не введешь. А PERSONID это AUTOINCREMENT поле. Там для него и Генератор, и триггер уже написан. А он морда буржуйская мне что-то по англицки ошибку зараза выводит.
В TIBDataSet есть обьявление в INSERTSQL:
INSERT INTOSTUDENT(PERSONID,FIRSTNAME,MIDDLENAME,LASTNAME,STARTDATE) VALUES
(gen_id(PERSONID_GEN,1),:FIRSTNAME,:MIDDLENAME, :LASTNAME,:STARTDATE);


Помогите разобраться в чем проблема


Alexandr   (2003-04-28 07:21:00) [1]

значит, в следующий раз отвечать не буду - сам разбешься.


msoftware   (2003-04-27 04:48:00) [2]

>Alexandr © (26.04.03 08:00)
Как только я написал сюда, так сразу после этого и обнаружил что действительно в последних версиях можно задавать имя генератора. Такое со мной всегда...


Alexandr   (2003-04-26 08:00:00) [3]

в голове. И необязательно твоей, если подумал что это наезд.
варианты решения
1) Убрать Required у поля в датасете - ругаться перестанет
2) Сначала получать программой значение генератора, а потом уж его же и вставлять - будет немерянное удобство
3) Не помню, но по-моему в последних версиях можно просто задать имя генератора у Dataset и оно само... В FIBPlus по крайней мере так и надо делать. Рулез немерянный


Наверх

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