Вниз
Скачать: CL | DM;

Автоинкремент   Найти похожие ветки 

← →
dvp ©   (2004-12-26 19:57) [0]

Подскажите, как при INSERT"е через ADOCommand узнать сгенерированное значение поле счётчика?

Ну кроме SELECT TOP 1 id FROM table ORDER BY id DESC;


← →
aus   (2004-12-26 20:18) [1]

select max(id) from table


← →
aus   (2004-12-26 20:19) [2]

только в одной транзакции, иначе кто-то другой может вставить запись и будет уже не твой id.


← →
sniknik ©   (2004-12-26 20:40) [3]

select @@IDENTITY as ID


← →
aus   (2004-12-26 20:43) [4]

sniknik ©   (26.12.04 20:40) [3]
>Автоинкремент [D7, MS Access]


← →
sniknik ©   (2004-12-26 20:51) [5]

aus   (26.12.04 20:43) [4]
ага в курсе. попробуй.


← →
aus   (2004-12-26 20:57) [6]

sniknik ©   (26.12.04 20:51) [5]
и впрямь, отстал я от жизни...


← →
dvp ©   (2004-12-26 20:57) [7]

Честно говоря не думаю, что Access оперирует понятием "транзакция"
Вот в php+MySQL есть возможность после инсерта вызвать mysql_insert_id($connection), которая вернёт значение последнего сгенерированного счётчика для текущего сеанса. Должно же быть что-то аналогичное в ADO


← →
aus   (2004-12-26 21:00) [8]

dvp ©   (26.12.04 20:57) [7]
оперирует, если не Access, то jet - точно...


← →
sniknik ©   (2004-12-26 21:14) [9]

> Честно говоря не думаю, что Access оперирует понятием "транзакция"
и тем не менее, оно есть.


- ты суслика видиш?
- нет.
- и я нет, а он тем не менее есть.
© ДМБ


> есть возможность после инсерта вызвать mysql_insert_id($connection)
@@IDENTITY это как раз то самое, только непосредственно от движка, в функцию не завернуто. (исправь "упушение" ;о)))


← →
dvp ©   (2004-12-26 21:19) [10]

sniknik ©   (26.12.04 21:14) [9]
Хм.... @@IDENTITY говорите ...... а где его найти?
Т.е. SELECT @@IDENTITY даст тот самый id для текущего коннекта?


← →
sniknik ©   (2004-12-26 22:37) [11]

зачем искать, делай следующим запросом после инсерта, уже показанный с ним.

(если нужна именно функция (как описано), то придется свое написать чтото вроде элементарного парсера запроса на onExecuteComplete, и если INSERT присутствует то дополнительный запрос выполнять с последующим изменением своей переменной insert_id, функцией ее возвращать. только это уже будет не от стандартного конекта а от твоего переопределенного и дописанного)



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.022 c
14-1105584143
Думкин
2005-01-13 05:42
2005.01.30
С Днем Рождения! 13 января


3-1103114467
Mishenka
2004-12-15 15:41
2005.01.30
Почему не сохраняется минимальное значение?


11-1088366446
Владимир
2004-06-28 00:00
2005.01.30
Как конвертировать JPEG в BMP ?


1-1106194333
Poha
2005-01-20 07:12
2005.01.30
Edit


11-1088631285
Vladimyr
2004-07-01 01:34
2005.01.30
SysDcu 7 - где же эти 5 кБ ?




   Наверх