Начало » Использование СУБД » Firebird, HQbird, InterBase » C API и получение значения, возвращаемого INSERT ... RETURNING
C API и получение значения, возвращаемого INSERT ... RETURNING [сообщение #5139] |
Thu, 20 June 2024 10:22 ![Переход к следующему сообщению Переход к следующему сообщению](/theme/default/images/down.png) |
unif
Сообщений: 2 Зарегистрирован: June 2024
|
Junior Member |
|
|
Добрый день.
Не получается разобраться как с помощью функций C API Firebird получить значение, возвращаемое запросом INSERT ... RETURNING. Например
INSERT INTO FTABLE (FID, FNUM, BTYPE, FDATE, FVER) VALUES (NEXT VALUE FOR GNR2, 1, '101', '17.11.2023', 2713) RETURNING FID
Вызываю
isc_dsql_exec_immed2(stat, db, trans, 0, sqlstr, SQL_DIALECT_V6, NULL, osqlda)
В osqlda подготовлена одна XSQLVAR типа, соответствующего FID. Функция выполняется успешно, запись в таблицу добавляется, но в XSQLVAR возвращается 0, а не актуальный FID добавленной записи.
Как можно получить это возвращаемое значение? В isql FID возвращается. Может я вообще не той функцией пытаюсь это реализовать, хотя по описанию она подходит.
И еще вопрос - документация на API везде попадается от Interbase 6. А более актуальной версии для Firebird 3/4/5 нет?
|
|
|
|
|
|
|
|
|
Переход к форуму:
Текущее время: Sun Sep 08 05:15:43 GMT+3 2024
Общее время, затраченное на создание страницы: 0.00906 секунд
|