Как узнать самое большое ID ?

voland

Guest
Как узнать самое большое ID ?

Есть таблица куда что-то заноситься при этом ID естевственно увеличиваеться, как с помощью ПХП узнать наибольший АЙДИ???

З.Ы. Я знаю, что это должен быть какой-то цикл который просчитает наибольшее! Но вот мыслей больше не приходит! :(
 

С.

Guest
Не правильно!

После выполнения этого запроса есть шанс, что другой пользователь вставит новую строку. Можно блокировать таблицу, но если каждый встречный-поперечный будет иметь право на блокировку, то прощай, спокойный сон администратора.

Вопрос надо ставить так: зачем тебе понадобился максимальный ИД? Обычно он никому, кроме извращенцев не нужен.
 

tony2001

TeaM PHPClub
>После выполнения этого запроса есть шанс, что другой
>пользователь вставит новую строку.
из вопроса не вытекает, что это является критическим моментом.
 

voland

Guest
Автор оригинала: С.

Не правильно!

После выполнения этого запроса есть шанс, что другой пользователь вставит новую строку. Можно блокировать таблицу, но если каждый встречный-поперечный будет иметь право на блокировку, то прощай, спокойный сон администратора.

Вопрос надо ставить так: зачем тебе понадобился максимальный ИД? Обычно он никому, кроме извращенцев не нужен.
А как я ещё могу определить Id новой темы?
 

tony2001

TeaM PHPClub
задали вопрос "зачем?" - он является ключевым
можно еще:
SELECT id FROM table ORDER BY id DESC LIMIT 1
 

voland

Guest
Автор оригинала: tony2001
задали вопрос "зачем?" - он является ключевым
можно еще:
SELECT id FROM table ORDER BY id DESC LIMIT 1
Мне надо записать в БД новую тему, пользователя, текст сообщения

У меня две таблицы для этого
одна под текст сообщений, другая под темы

PHP:
CREATE TABLE topics (
  topic_id int(10) NOT NULL auto_increment,
  topic_title varchar(50) NOT NULL default '',
  username varchar(50) NOT NULL default '0',
  topic_date datetime NOT NULL default '0000-00-00 00:00:00',
  PRIMARY KEY  (topic_id)
) TYPE=MyISAM;

CREATE TABLE post_text (
  post_id int(10) NOT NULL auto_increment,
  post_text mediumtext NOT NULL,
  post_date datetime NOT NULL default '0000-00-00 00:00:00',
  username varchar(50) NOT NULL default '0',
  topic_id int(10) NOT NULL default '0',
  PRIMARY KEY  (post_id)
) TYPE=MyISAM;
А надо мне это для того, чтобы я потом мог определять какое сообщение в какой теме! Ведь есть новые темы, а есть посты в ней, но самое первое сообщение в новой теме тоже должно получить ID этой темы! Я не знаю осто как мона сделать по другому :( Но буду рад любому другому приемлимому варианту
 

voland

Guest
Автор оригинала: tony2001
auto_increment & mysql_last_id ();
Я конечно понимаю, что с твоим стажеи в ПХП тебе будет понятна эта строка, но мне она мало что говорит! :(
 

RomikChef

Guest
Воланд я уже написал тебе в твоем предыдущем вопросе.
строка эта выглялит так
[m]mysql_insert_id[/m]
и будет понятна даже тебе.
 

С.

Guest
Вот видишь, маленькая ошибочка в формулировке и все становится с ног на голову. Тебе нужен не максимальный ИД, а ИД, данной конкретной записи, только-что вставленной данным конкретным пользователем. А это, согласись, не совсем одно и то же.
 

voland

Guest
Автор оригинала: С.
Вот видишь, маленькая ошибочка в формулировке и все становится с ног на голову. Тебе нужен не максимальный ИД, а ИД, данной конкретной записи, только-что вставленной данным конкретным пользователем. А это, согласись, не совсем одно и то же.
Да, это я неправильно сформулировал вопрос! Насчет MySql_insert_id я понял :) Спасибо уже сделал :))
 
Сверху