[OLE DB] Как определить ID добавленной записи?
От: Винокуров Андрей  
Дата: 20.05.02 13:27
Оценка:
Всем привет.

Добавляю запись в таблицу (вызывая метод InsertRow интерфеса IRowsetChange). Одно из полей таблицы — identity (MS SQL Server). В аксессоре в соответствующем BIND-элементе для этого поля я прописываю "использовать значение по умолчанию". Запись вставляется нормально. Но мне нужно получить значение identity-поля вставленной записи. Идентифицировать добавленную запись по значению других полей невозможно. Взять последнюю (с макс. значением ID) запись тоже нельзя. Для работы с записями команды использовать запрещено — только интерфейсы IRowset/IRowsetChange. Есть ли способ узнать значение поля ID добавленной записи при указанных ограничениях, работающий: (1) для SQL-сервера, (2) для любого OLEDB провайдера источника, поддерживающего serial-поля? А как указанная проблема решается в ADO?

Пока.
Андрей.
Re: [OLE DB] Как определить ID добавленной записи?
От: Vaso Австралия  
Дата: 20.05.02 14:41
Оценка:
Здравствуйте Винокуров Андрей, Вы писали:

ВА>Всем привет.


ВА>Добавляю запись в таблицу (вызывая метод InsertRow интерфеса IRowsetChange). Одно из полей таблицы — identity (MS SQL Server). В аксессоре в соответствующем BIND-элементе для этого поля я прописываю "использовать значение по умолчанию". Запись вставляется нормально. Но мне нужно получить значение identity-поля вставленной записи. Идентифицировать добавленную запись по значению других полей невозможно. Взять последнюю (с макс. значением ID) запись тоже нельзя. Для работы с записями команды использовать запрещено — только интерфейсы IRowset/IRowsetChange. Есть ли способ узнать значение поля ID добавленной записи при указанных ограничениях, работающий: (1) для SQL-сервера, (2) для любого OLEDB провайдера источника, поддерживающего serial-поля? А как указанная проблема решается в ADO?


ВА>Пока.

ВА>Андрей.
ВА>

Нужно использовать свойство набора рядов DBPROP_SERVERDATAONINSERT
Vaso
Re[2]: [OLE DB] Как определить ID добавленной записи?
От: Аноним  
Дата: 22.05.02 12:12
Оценка:
Здравствуйте Vaso, Вы писали:

V>Нужно использовать свойство набора рядов DBPROP_SERVERDATAONINSERT


Огромное спасибо. Это именно то, что нужно.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.