Ручной инкремент поля

trashcan

Новичок
Ручной инкремент поля

Есть таблица cats, в ней три поля:
id
name
weight

Подскажите, можно ли одним запросом сделать так, чтобы при добавлении в таблицу новой строки полю weight присваивалось бы максимальное значение weight до вставки +1 , например:
для таблицы
id.......name........weight
1........First..........49
2........Second......50
3........Third.........51
запрос нужен такой, чтобы после выполнения значение weight нововставленной строки было равно 52 (ессно, мы изначально не знаем, что 51 - максимальное).
Заранее спасибо.
 

Krishna

Продался Java
А чем автоинкремент не устраивает?
Вроде он отвечает требованиям.
А вообще одним запросом можно сделать много чего, если поюзать хранимые процедуры.
 

Фанат

oncle terrible
Команда форума
Krishna
ну ясно же, что это поле для сортировки, и может меняться, в отличие от инкремента
 

trashcan

Новичок
Да, поле для сортировки. Так все таки можно? Или только сначала выбирать max, а потом добавлять?
 

trashcan

Новичок
А попроще никак нельзя? Просто не могу сходу разобраться, а время поджимает.
 

trashcan

Новичок
Нет, но в принципе ведь могут.
А mysql_insert_id ловит айдишник последней записи только текущего соединения с базой или все таки может поймать id записи, добавленной другим юзером? Ну то есть, может ли (пусть даже только теоритически) произойти так, что между запросом и вызовом mysql_insert_id кто-то успееет добавить еще одну запись и изменить возвращаемый id.
 

berkut

Новичок
Ну то есть, может ли (пусть даже только теоритически) произойти так, что между запросом и вызовом mysql_insert_id кто-то успееет добавить еще одну запись и изменить возвращаемый id.
нет
 
Сверху