Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.13;
Скачать: CL | DM;

Вниз

TIBDataSet...   Найти похожие ветки 

 
First_May ©   (2002-12-19 09:50) [0]

Здравствуйте! Записал в TIBDataSet в свойство InsertSQL следующий текст:
INSERT INTO MOL(COD, CODP, DEF, DEFS)
VALUES(:NEW_COD, :NEW_CODP, :NEW_DEF, :NEW_DEFS)
Поле COD является автоинкрементным. Но при добавлении новой записи выскакивает ошибка, то есть COD не получает значение. Как этого избежать???


 
Prooksius ©   (2002-12-19 09:56) [1]

Можно написать триггер на вставку и заполнять поле там, а на клиенте его не изменять.


 
First_May ©   (2002-12-19 10:07) [2]

Я об этом думал, но мне надо использовать этот код в связанных таблицах... Ну а вообще кто нибудь сталкивался с этим вопросом еще?


 
Alexandr ©   (2002-12-19 10:09) [3]

все сталкивались.
Но непонятно, чего конкретно ты хочешь избежать...


 
Prooksius ©   (2002-12-19 10:11) [4]

В таком случае самое лучшее - Query.SQL := select gen_id(mygenerator, 1) RecNo from rdb$datadase
При вставке выполнять эту Query и читать значение поля RecNo.
Тогда ты будешь этот номер знать и в клиенте.
Я так и делаю. ИМХО самый лучший способ.


 
First_May ©   (2002-12-19 10:16) [5]

А как Alexandr © (19.12.02 10:09) решает этот вопрос? :)


 
Johnmen ©   (2002-12-19 10:30) [6]

Если надо использовать в связ.табл., то наиболее предпочтительней заранее получать ID.
см. Prooksius © (19.12.02 10:11)
или с помощью ХП (я предпочитаю так)


 
First_May ©   (2002-12-19 10:54) [7]

Спасибо всем!



Страницы: 1 вся ветка

Текущий архив: 2003.01.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
3-36923
ффф
2002-12-17 17:29
2003.01.13
Запрос


1-37074
VJar
2003-01-03 13:45
2003.01.13
Обработка ошибки перевода данных


1-37019
bkv
2002-12-26 10:32
2003.01.13
Регистрация сервера автоматизации в системе.


7-37397
sural
2002-11-02 03:37
2003.01.13
Как узнать, какой пиксель экрана светиться каким цветом?


14-37378
grifon
2002-12-24 18:22
2003.01.13
IntetCart