[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как сделать красивее
killich
Привет, народ!
Посоветуйте, как красивее всего получить id последнего занесенного в таблицу поля.
Благодарю!



Спустя 15 часов, 4 минуты, 18 секунд (19.07.2006 - 11:24) Vitas написал(а):
mysql_insert_id ()

Спустя 5 часов, 40 минут, 34 секунды (19.07.2006 - 17:04) killich написал(а):
Мне, неверное, надо немного другое.
В доке написано:

mysql_insert_id -- Get the ID generated from the previous INSERT operation

Т.е., получить id записи, последней вставки данных.

А я хочу, чтоб можно было взять любую таблицу (не обязательно ту, в которую произвели последнюю вставку) и тут же узнать ее последний (максимальный) id.
В принципе, просто нужно выбрать все id таблицы в убывающем порядке и взять первый. Я же увидел в MyAdmin строчку LAST_INSERT_ID,
и подумал, что может, есть более хитрый способ, вроде подачи запроса 'LAST_INSERT_ID myTab', который и вернет этот id. Вот и решил сначала спросить.
Но, mysql_insert_id - тоже пригодится. Спасибо.

Спустя 55 минут, 11 секунд (19.07.2006 - 17:59) vasa_c написал(а):
killich, зачем?

Спустя 12 часов, 19 минут, 54 секунды (20.07.2006 - 06:19) zilogo написал(а):
$db = '';
$table = '';

mysql_connect('', '', '');
$res = mysql_query("show table status from $db");

while($arr_result = mysql_fetch_assoc($res))
{
if($arr_result['Name'] == $table)
if(empty($arr_result['Auto_increment']))
echo 'В таблице нет поля с auto_increment';
else
echo 'Последний auto_increment: '.($arr_result['Auto_increment']-1);
}

Спустя 2 месяца, 11 дней, 5 часов, 35 минут, 49 секунд (1.10.2006 - 11:55) killich написал(а):
Самому себе:
Killich, вот то, что ты хотел. Тут, наверное, не потеряется.
А то опять забудешь в какую папку запихал ;0)

A common problem is how to get the value of an automatically generated
ID from an `INSERT'. With ODBC, you can do something like this (assuming
that `auto' is an `AUTO_INCREMENT' field):

INSERT INTO foo (auto,text) VALUES(NULL,'text');
SELECT LAST_INSERT_ID();

Or, if you are just going to insert the ID into another table, you can
do this:

INSERT INTO foo (auto,text) VALUES(NULL,'text');
INSERT INTO foo2 (id,text) VALUES(LAST_INSERT_ID(),'text');

http://chronos.cs.msu.su/cgi-bin/info2www?...+last_insert_id

Спустя 1 минута, 5 секунд (1.10.2006 - 11:56) killich написал(а):
ну, или почти то.... ;0)

Спустя 8 дней, 9 минут, 19 секунд (9.10.2006 - 12:05) max_ru написал(а):
SELECT MAX user_id FROM table - или как-то так, я точно не помню, а в книжку лезть лень. Кури мануал.


_____________
Аксиома Дучарма:
Если рассмотреть проблему достаточно внимательно, то Вы увидите себя, как часть этой проблемы.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.