Как Получить Id записи? ;)

iii

Guest
Как Получить Id записи? ;)

Есть Табличка:
<id | ФИО>
id - auto_increment

Делаю в нее:

Insert INTO TABLE1 (ФИО) VALUES ('Иванов')

Вопрос:
Как получить ID той записи, которую я только что вставил?

Пробовал Сразу же делать
SELECT * ... WHERE ФИО='Иванов'
Но этот запрос возвращает несколько записей
ж((((,
Есть идея завести еще одно поле В которое писать время добавления записи и брать самую свежую,
но может есть более простой способ?
Чего делать?
 

Demiurg

Guest
Re: Как Получить Id записи? ;)

либо средствами php mysql_last_id()
либо средствами mysql 'select LAST_INSERT_ID()'
 

Tertium Organum

Guest
Re: Re: Как Получить Id записи? ;)

Автор оригинала: Demiurg
либо средствами php mysql_last_id()
либо средствами mysql 'select LAST_INSERT_ID()'
а у меня работает select id from table order by id desc limit 1 :)
вот я напрягался-то! :) snx
 

Tertium Organum

Guest
Re: Re: Как Получить Id записи? ;)

Автор оригинала: Demiurg
либо средствами php mysql_last_id()
либо средствами mysql 'select LAST_INSERT_ID()'
Кстати, не mysql_last_id, а mysql_insert_id.
Хотя, конечно, первое звучит лаконичнее, к ситуации :)
 

Doomer

Guest
Re: Re: Re: Как Получить Id записи? ;)

Автор оригинала: Tertium Organum
а у меня работает select id from table order by id desc limit 1 :)
вот я напрягался-то! :) snx
Это геморой, зачем лишний раз нагружать сервак?
 

iii

Guest
Re: Re: Re: Как Получить Id записи? ;)

Автор оригинала: Tertium Organum
а у меня работает select id from table order by id desc limit 1 :)
вот я напрягался-то! :) snx
Это абсолютно неверный подход с точки зрения реляционной модели.
 

su1d

Старожил PHPClubа
Re: Re: Re: Как Получить Id записи? ;)

Автор оригинала: Tertium Organum
а у меня работает select id from table order by id desc limit 1 :)
вот я напрягался-то! :) snx
Клиент №1 вставляет запись, в это же время клиент №2 тоже вставляет запись. После этого первый клиент смотрит только что вставленный ИД и получает ИД второго клиента. Первая запись теряется.
Вывод: это будет работать только в системе с десятком случайных посещений в год.

Лучше всего делать mysql_insert_id(), т.к. по-моему в этом случае все данные берутся из внутренней структуры данных, и даже не производится запрос к БД.
 
Сверху