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

Форум MySQL

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

 

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

вид форума:
Линейный форум Структурный форум

тема: Проблема с ON DUPLICATE KEY UPDATE
 
 автор: Roma   (21.11.2008 в 14:01)   письмо автору
 
 

Здравствуйте.
id (int 11)- PK
new (int 6 )
Запрос
INSERT INTO info(id,new)  VALUES($id,1)
        ON DUPLICATE KEY UPDATE `new`=`new`+1 


увеличивает значение поля new иногда на 1, иногда на 2. В чем может быть причина?
echo mysql_affected_rows() выдает 2
Заранее спасибо.

  Ответить  
 
 автор: Roma   (21.11.2008 в 14:39)   письмо автору
 
   для: Roma   (21.11.2008 в 14:01)
 

сделал так

$new=mysql_result(mysql_query("select new from np_info where id=12"),0);
echo "До обновления: $new<br>";
$new=$new+1;
$npstrq=mysql_query("UPDATE np_info set `new`=$new where id=12") or die(mysql_error());
echo"После обновления: ".mysql_result(mysql_query("select new from np_info where id=12"),0);
echo "<br>Затронуто рядов: ".mysql_affected_rows()."<br>";

Результат
До обновления: 3
После обновления: 4
Затронуто рядов: 1

А если глянуть в бд, new=5

  Ответить  
Rambler's Top100
вверх

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