Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Получить ID строки после обновления

Сообщения:  [1-10]   [11-17] 

 
 автор: TetRiska   (18.05.2013 в 15:20)   письмо автору
 
   для: confirm   (18.05.2013 в 14:53)
 

понял, спасибо, буду селект использовать

  Ответить  
 
 автор: confirm   (18.05.2013 в 14:53)   письмо автору
 
   для: TetRiska   (18.05.2013 в 14:29)
 

Естественно последний, об этом даже в названии функции есть - LAST_

PS. Надо добавить, что вернет только в рамках текущего соединения, а не в любое вам угодное время.

  Ответить  
 
 автор: TetRiska   (18.05.2013 в 14:29)   письмо автору
 
   для: confirm   (18.05.2013 в 14:14)
 

вроде начинаю догонять...если в таблице идут такие ИД (автоинкремент):

4
66
72
112

и я хочу обновить 72 запись, то мне вернет ИД 112 записи?

  Ответить  
 
 автор: confirm   (18.05.2013 в 14:14)   письмо автору
 
   для: TetRiska   (18.05.2013 в 13:36)
 

Темный лес какой-то.

Что такое mysql_insert_id() вы знаете, и должны знать, что эта функция работает с последним выполненным запросом, и если нужно сохранить id, то mysql_insert_id() нужно выполнять сразу после запроса вставки.
А функции MySQL LAST_INSERT_ID() всегда содержит последний сгенерированный id и не обнуляется между запросами.

Но в том и другом случае, это последний сгенерированный id. То есть смыл всей вашей математики только в том случае будет, если именно он вас интересует. Вы же и сейчас сообщаете, что идет обычное обновление записи по where, то есть даже и намека нет на какой-то последний id. И что же за id вам надо в таком случае, какого-то последнего запроса?

  Ответить  
 
 автор: TetRiska   (18.05.2013 в 13:36)   письмо автору
 
   для: confirm   (18.05.2013 в 13:32)
 

не совсем понял ваше высказывание, вроде бы все верно объяснил в начале топика

идет обычное обновление записи по where и дабы избежать доп. запроса select, чтобы выбрать ид по тому же where, я задумался - есть ли возможность вернуть ид обновляемой записи, оказывается есть

мне этот ид нужен для запроса на удаление

  Ответить  
 
 автор: confirm   (18.05.2013 в 13:32)   письмо автору
 
   для: TetRiska   (18.05.2013 в 13:11)
 

Надо объяснять, что это обновление ваше после вставки записи, и почему сразу после нее не сохраняется id, а обязательно нужно изголяться?

  Ответить  
 
 автор: TetRiska   (18.05.2013 в 13:11)   письмо автору
 
   для: DangerBay   (18.05.2013 в 08:43)
 

то, что нужно, спасибо

  Ответить  
 
 автор: DangerBay   (18.05.2013 в 08:43)   письмо автору
 
   для: TetRiska   (18.05.2013 в 02:47)
 

function update_query($table, $arr, $where=''){
    mysql_query("UPDATE `".$table."` SET id=LAST_INSERT_ID(id), " . $arr . ($where != '' ? ' WHERE ' . $where : ''));
    return mysql_insert_id();
}

  Ответить  
 
 автор: TetRiska   (18.05.2013 в 02:47)   письмо автору
 
   для: confirm   (18.05.2013 в 01:45)
 

)) это я уже понял, что mysql_insert_id() не вернет нужного значения, но мне не хочется делать лишнего запроса для определения ИД... разве на стороне мускула нет никаких манипуляций?

  Ответить  
 
 автор: confirm   (18.05.2013 в 01:45)   письмо автору
 
   для: TetRiska   (18.05.2013 в 01:07)
 

А вы о чем? Я о том, что если вам после UPDATE mysql_insert_id() вернет номер, который UPDATE ухитрился сформировать, можете заказывать фрак и отправляться в Стокгольм. )

  Ответить  

Сообщения:  [1-10]   [11-17] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования