Форум: "Базы";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];
ВнизINSERT и значение поля auto_increment Найти похожие ветки
← →
ZA (2003-10-17 07:41) [0]Вопрос несколько не по Delphi, но по SQL.
Имею простенькую таблицу (MySQL) вида
id int(11) NOT NULL auto_increment,
name varchar(32) NOT NULL default "",
PRIMARY KEY (id)
...
Добавляю запись из TQuery (да в общем не важно откуда)
INSERT INTO table (name) VALUES (:name);
Все. А дальше мне нужно использовать в Delphi значение поля id, которое создано автоматически сервером БД. Где это значение взять?
Сейчас организую запрос SELECT на последнюю запись. Но мне кажется такой путь очень кривым, поскольку, пока я буду организовывать запрос, вдруг кто-то из других клиентов добавит свою запиь и я получу неверный результат. Может есть прямой способ?
Спасибо.
← →
DenK_vrtz (2003-10-17 08:09) [1]Написать процедуру, в которой будет вставляться запись, а выходным параметром будет новое значение ID.
Хотя, как мне кажется (не работал с MySQL), у автоинкремента должно быть нечто вроде свойства "текущее значение", могу ошибаться.
← →
ZA (2003-10-17 09:06) [2]> Написать процедуру, в которой будет вставляться запись, а
> выходным параметром будет новое значение ID.
Именно этого я и хочу. Нельзя ли подробнее описать как это сделать. В SQL я пока слаб, можно это сделать в одном запросе?
← →
DenK_vrtz (2003-10-17 09:18) [3]http://soft.org.ua/docs/mysql/ru/example-AUTO_INCREMENT.html
← →
Johnmen (2003-10-17 09:22) [4]>ZA ©
Последнее значение АИ, которое было определено для твоего инсерта, получить корректно и однозначно невозможно. Процедур в MySQL нет. И много чего еще.
← →
DenK_vrtz (2003-10-17 09:26) [5]Johnmen ©, серьезно процедур в MySQL нет?
А как же без них?
← →
asp (2003-10-17 09:27) [6]Вставил запись и ищи её по NAME.
← →
Johnmen (2003-10-17 09:34) [7]>DenK_vrtz © (17.10.03 09:26)
Тут уж кто как может...:)
← →
DenK_vrtz (2003-10-17 09:37) [8]Johnmen ©, понял, спасибо :)
← →
Johnmen (2003-10-17 09:43) [9]>DenK_vrtz © (17.10.03 09:37)
На всякий случай уточню - нет хранимых процедур.
А то еще пользователи MySQL подумают о UDF :)
← →
Andriy Tysh (2003-10-17 10:43) [10]В MS SQL - @@IDENTITY
← →
ZA (2003-10-20 13:44) [11]Благодарю за обсуждение и ссылки. Спасибо.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.047 c