![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблемы с 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 по крайней мере так и надо делать. Рулез немерянный