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

Вниз

MSSQL+ADO. Позиционирование после добавления записи   Найти похожие ветки 

 
Botov   (2003-01-27 11:52) [0]

Здравствуйте.
Хотелось бы реализовать сабж.
Понятное дело, что если вставку делать через SP, то проблем вернуть на клиент @@IDENTITY нет. Но хочется сделать тоже самое при использовании метода INSERT компонента TADODataSet. Я посмотрел логи сервера и увидел, что добавление он делает следующим образом:
exec sp_executesql N"INSERT INTO "ExpImp".."LetDetail" ("ItemPos",..............
SELECT @@IDENTITY
!!!!!
По сути дела это то, что мне необходимо!!! Как можно получить это значение?

Спасибо.


 
sniknik ©   (2003-01-27 12:14) [1]

а в чем проблема то? ну сделай SELECT @@IDENTITY (в том же датасете) и получиш значение.
или делай пакетно, в датасете команды SQL
UNSERT ....
SELECT @@IDENTITY AS ID
вот и вернется нужное.

или чегото не так?


 
Botov   (2003-01-27 12:25) [2]

да. виноват - не объяснил по-человечески :)))
в ADODataSet"e хранится обычный SELECT и к нему привязано какое-то количество визуальных компонентов: сеток, полей и пр. Пользователь добавляет запись через навигатор или еще как. И после метода Post компонент TADODataSet сам формирует требуемый Insert или Update. ( Ясное дело, что не сам этот компонент формирует, а где-то там в недрах ADO ). И нужный мне SELECT @@IDENTITY формируется в связи с установкой опции Update Resync.
Так вот куда АДО девает это значение, и можно ли его получить?


 
sniknik ©   (2003-01-27 12:52) [3]

Где оно теряется в недрах ADO хз, можно найти (по анализу имен в модуле, или трассировкой, ну на крайняк документацию почитать :-)), только зачем? никто не мешает его после Post еще раз получить.


 
Botov   (2003-01-27 14:00) [4]

Ну я и тормоз!!! :)))
После Post мы имеем уже корректное значение ID !!!



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

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

Наверх




Память: 0.47 MB
Время: 0.018 c
14-38521
Шишкин Илья
2003-01-26 19:09
2003.02.13
Помогите с компонентом


1-38189
Andrey-k
2003-02-02 22:45
2003.02.13
Help. Exel. Как сделать WorkBook в Read-Only или запаролить?


1-38251
Niki
2003-02-05 14:16
2003.02.13
Как получить значение выбранного пункта Outline1?


14-38499
Evgeny
2003-01-26 10:58
2003.02.13
функции в DLL


1-38150
NAlexey
2003-02-03 11:15
2003.02.13
Сохранение TCollection в Run-time