Я использую PowerBuilder 12 Classic DataWindow для вставки новой записи в таблицу базы данных SQL Server 2008 с столбцом идентификаторов. После вставки я хотел бы получить значение столбца идентификаторов для использования в других таблицах.
В моем pbodb120.ini под [MS_SQLSERVER_SYNTAX] я изменил строку GetIndentity на это:
GetIdentity='Select IDENT_CURRENT (''&TableName'')'
Мой код выглядит так (docid - это столбец идентификаторов):
dw_document_add.update(true, true)
li_docid = dw_document_add.getitemnumber(dw_document_add.getrow(), "docid")
Беда в том, что, кажется, личность возвращается только наполовину. Я думаю, что это может быть проблема времени. (Записи вставляются в базу данных.)
Есть ли какой-нибудь способ, которым я могу быть уверен, чтобы получить личность каждый раз?
UPDATE
Я добавил Identity = '@@ IDENTITY' в строку подключения, и теперь она работает. Но я не уверен, должно ли это быть в файле pbodbxxx.ini.