mysql insert - возвратить ид запроса

I
На сайте с 04.08.2006
Offline
112
1174

Здравствуйте дорогие форумчане.

Столкнулся со следующей проблемой.

Нужно при выполнении запроса (INSERT), что бы возвращался ИД (auto_increment), как составлять запрос тогда?

last_insert_id - не предлагать

Инновационный автомобильный проект. Экономия от 500 - 3000$ при покупке автомобиля (http://autoline24.com.ua) Магазин-блог уникальных полезных скриптов (http://ivashka.org.ua)
F
На сайте с 24.04.2009
Offline
45
#1
ivashka:
Здравствуйте дорогие форумчане.
Столкнулся со следующей проблемой.
Нужно при выполнении запроса (INSERT), что бы возвращался ИД (auto_increment), как составлять запрос тогда?
last_insert_id - не предлагать

Это почему же

INSERT INTO table (id, text, ...) VALUES (0, '$text', ...)

И можем пользоваться LAST_INSERT_ID()

T
На сайте с 11.08.2005
Offline
181
#2

mysql_insert_id() возвращает ID, сгенерированный для столбца AUTO_INCREMENT предыдущим запросом INSERT

I
На сайте с 04.08.2006
Offline
112
#3
Timen:
mysql_insert_id() возвращает ID, сгенерированный для столбца AUTO_INCREMENT предыдущим запросом INSERT

допустим есть 1000 инсертов в минуту,mysql_insert_id() - может вернуть не то значение.

Так как 2 запроса, могут в очередь на мускуль стать не один за другим, а между ними еще инсерт влезет.

Решение нашел через использование этих двух запросов в одной тразакции, тогда все будет суперово, и возвратится то что нужно.

S
На сайте с 15.07.2008
Offline
30
#4
ivashka:
допустим есть 1000 инсертов в минуту,mysql_insert_id() - может вернуть не то значение.
Так как 2 запроса, могут в очередь на мускуль стать не один за другим, а между ними еще инсерт влезет.

Решение нашел через использование этих двух запросов в одной тразакции, тогда все будет суперово, и возвратится то что нужно.

Ерунда. Курите документацию. last_insert_id работает в рамках соединения с БД и если это соединение не обрывается между запросами и не шарится между несколькими потоками (что вообще бред для веб-разработки), то он всегда будет корректно отрабатывать.

Банки Украины (http://www.bankstore.com.ua) Генератор сайтмепов (/ru/forum/272468) Ода Гугльботу (/ru/forum/285758)
AlikZP
На сайте с 22.11.2009
Offline
107
#5
Website CMS: быстрая, удобная, недорогая! Вечная лицензия за 45$ (/ru/forum/524503) Яся - быстрый поиск фото для товаров. OpenCart/ocStore. Дополнение. (/ru/forum/665287) Грамотная верстка ваших макетов (/ru/forum/comment/8853216)
S
На сайте с 07.06.2010
Offline
1
#6
ivashka:
допустим есть 1000 инсертов в минуту,mysql_insert_id() - может вернуть не то значение.
Так как 2 запроса, могут в очередь на мускуль стать не один за другим, а между ними еще инсерт влезет.

Решение нашел через использование этих двух запросов в одной тразакции, тогда все будет суперово, и возвратится то что нужно.

Что-то бред какой-то. mysql_insert_id — прекрасная функция и, как выше было сказано, работает исключительно в рамках соединения с БД.

Разрабатываю любые приложения, используя PHP/MySQL (/ru/forum/507878) ICQ # 140-840-100
[Удален]
#7

ivashka, сожгите глупые книги, которые вы прочитали и простирайте мозг бутылкой водки, а потом сразу читать мануалы

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий