Существует распространенная
проблема, заключающаяся в том, как
получить значение автоматически
сгенерированного ID из
INSERT. С помощью ODBC можно
сделать что-то наподобие
следующего (предполагается, что auto
представляет собой поле
AUTO_INCREMENT ):
INSERT INTO foo (auto,text) VALUES(NULL,'text'); SELECT LAST_INSERT_ID();
Или, если вы просто собираетесь
вставить данный ID в
другую таблицу, то можно сделать
так:
INSERT INTO foo (auto,text) VALUES(NULL,'text'); INSERT INTO foo2 (id,text) VALUES(LAST_INSERT_ID(),'text');
See Раздел 8.4.6.3, «Как получить уникальный идентификатор для последней внесенной строки?».
Для некоторых приложений ODBC (по крайней мере, для Delphi и Access), чтобы найти недавно вставленную строку, можно использовать следующий запрос:
SELECT * FROM tbl_name WHERE auto IS NULL;
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.
© 1995-2005 MySQL AB. All rights reserved.
