Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Рел Гость
|
Добавлено: Сб Ноя 23 2002 11:45 Заголовок сообщения: Как узнать ID (auto_increment) будущей записи в MySQL |
|
|
есть: table "Companies" --------------------------- id int not null auto_increment, name tinytext not null, primary key(id) --------------------------- как узнать id будущей записи перед её добавлением? |
|
Вернуться к началу |
|
 |
Борис Гость
|
Добавлено: Пн Ноя 25 2002 16:44 Заголовок сообщения: select max(id) from Companies; однако, или, если хочешь, (id+1). Лично я автоинкремент не уважаю. (-) |
|
|
- |
|
Вернуться к началу |
|
 |
Рел Гость
|
Добавлено: Вт Ноя 26 2002 00:10 Заголовок сообщения: Re: select max(id) from Companies; однако, или, если хочешь, (id+1). Лично я автоинкремент не уважаю. (-) |
|
|
уважаешь случайные числа (комбинации цифр и букв)? и сколько символов у тебя в идентификаторе ? 5 или 10? и всё равно вопрос, не разрешён - мне до добавления новой записи нужно узнать её идентификатор, чтобы потом повторно к этой же таблице не обращаться со сложным запросом лишь для того, чтобы вычислить идентификатор %(
вобщем, придётся делать старым макаром... |
|
Вернуться к началу |
|
 |
Борис Гость
|
Добавлено: Вт Ноя 26 2002 09:35 Заголовок сообщения: Re: select max(id) from Companies; однако, или, если хочешь, (id+1). Лично я автоинкремент не уважаю. (-) |
|
|
Насколько я знаю, MySQL просто вычисляет max()+1, то есть, если добавлена запись с ID==100, затем она удалена, но новые еще не добавлялись, то добавляемая после этого запись будет иметь снова ID==100. По поводу автоинкремента, то я предпочитаю инкремент, но без "авто-". Я не уважаю автоинкремент, потому что в известных мне реализациях он не гарантирует уникальности (как в приведенном примере, хотя есть и другие примеры). |
|
Вернуться к началу |
|
 |
SemenovV Гость
|
Добавлено: Вт Ноя 26 2002 16:29 Заголовок сообщения: Re: Как узнать ID (auto_increment) будущей записи в MySQL |
|
|
а если одновременно много юзеров добавляют записи в таблицу видимо надежнее это делать после добавления |
|
Вернуться к началу |
|
 |
Рел Гость
|
Добавлено: Ср Ноя 27 2002 06:14 Заголовок сообщения: Re: Как узнать ID (auto_increment) будущей записи в MySQL |
|
|
ситуация "много юзеров" исключена! |
|
Вернуться к началу |
|
 |
Олигарх
Зарегистрирован: 28.09.2002 Сообщения: 102
|
Добавлено: Пн Дек 02 2002 16:08 Заголовок сообщения: Re: |
|
|
Если до этого были записи в таблицу, то можно так:
select (LAST_INSERT_ID()+1) as new_id ...
Хотя лучше использовать LAST_INSERT_ID() после записи... |
|
Вернуться к началу |
|
 |
Рел Гость
|
Добавлено: Вт Дек 03 2002 00:06 Заголовок сообщения: Re: |
|
|
Спасибо!
Воспользуюсь! =) |
|
Вернуться к началу |
|
 |
|