Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > id новой записи при insert через IBQuery


Автор: php5 25.11.2008, 19:59
Делаю  вставку в  таблицу  через  IBQuery , необходимо в случаи  удачно выполненного  запроса получить id   новой записи , как это можно сделать  ?  smile 

Автор: Bose 25.11.2008, 21:05
Генерировать id перед вставкой в программе. 

Например, с помощью запроса
Код

select gen_id(имя генератора, 1) from RDB$DATABASE

Автор: Akella 26.11.2008, 00:04
Почитай про 
Код
select ... returning

Автор: Frees 26.11.2008, 07:31
Цитата(Akella @  26.11.2008,  02:04 Найти цитируемый пост)
Почитай про код SQL1:select ... returning


а из Query потом разве можно будет забрать этот параметр?

Автор: Akella 26.11.2008, 09:44
Кончено можно. Если не из IBQuery, то из IBDataSet`а можно. Можно из IDStoredProcedure. 
Что-то вроде этого, леньки дельфи открыть.
Код

IBQuery.SQL.ADD('inser ... returnig');
IBQuery.Exec;//или IBQuery.open; точно не помню
f := IBQuery.fields[0].value;
IBQuery.close;


Если уж очень сильно нужно, то скажите, я приведу полный пример. Но я использую FIB+, а не IBX.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)