[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Обновление таблиц БД
pultter
Столкнулся с такой проблемой. когда посылаешь запрос вида
PHP
$q mysql_query("UPDATE table SET num=num+1 WHERE candidate='".$o."'");

и если таблица пустая (значение столбца num по умолчанию 0), то значение остается 0, а не обновляется с каждым разом как нужно. в чем проблему? или как правильно сделать, чтобы значение обновлялось?



Спустя 12 минут, 18 секунд (20.05.2009 - 19:10) jetistyum написал(а):
чет я не понял, таблица пустая, а обновлять хочется...
а обновлять что, если таблица пустая.. и в ней нет записей?
если всетаки ты имел в виду поле пустое, то
1. Пустое и равное INT "0" не одно и тоже
2. А действительно ли у тебя поле в INT ???

Спустя 55 минут, 6 секунд (20.05.2009 - 20:06) Joker написал(а):
и действительно ли оно по умолчнию 0 ?

Спустя 12 часов, 56 минут, 14 секунд (21.05.2009 - 09:02) glock18 написал(а):
Давеча мне vasa_c, кажется, ссылку давал. Мне не помогла, но это как раз то, что тебе нужно (насколько я тебя понял):

http://dev.mysql.com/doc/refman/5.1/en/ins...-duplicate.html

Там первый комментарий содержит запрос для тебя.

Спустя 3 часа, 39 минут, 39 секунд (21.05.2009 - 12:41) pultter написал(а):
jetistyum, Joker, поле у меня действительно в int и значение по умолчанию равно 0. только у меня почему то этот ноль не обновляется..

Спустя 2 минуты, 24 секунды (21.05.2009 - 12:44) sergeiss написал(а):
Цитата (pultter @ 21.05.2009 - 12:41)
jetistyum, Joker, поле у меня действительно в int и значение по умолчанию равно 0. только у меня почему то этот ноль не обновляется..

Так а что, ты считаешь, должно обновляться???
Ты же сам сказал в самом начале, что таблица пустая. А UPDATE обновляет уже записанные данные, но не умолчания.

Тебе уже об этом вопросы задавали, но ты на них не ответил. Ни себе, ни форуму.

Спустя 6 минут, 46 секунд (21.05.2009 - 12:51) pultter написал(а):
sergeiss, как быть тогда, если я например, делаю онлайн голосование. до того как кто то отвечает все значения равны 0, а потом, после того как кто то ответил этот 0 обновляется, так ведь?как тогда сделать чтобы он обновлялся?

Спустя 8 минут, 21 секунда (21.05.2009 - 12:59) glock18 написал(а):
Надо быть внимательнее(я давал выше ссылку):

SQL
INSERT INTO table (word,num) VALUES ('a_word',1) ON DUPLICATE KEY UPDATE num=num+1;

Спустя 4 минуты, 44 секунды (21.05.2009 - 13:04) sergeiss написал(а):
pultter в переводе "на русский язык" то, что написал glock18, и что ЛОГИЧЕСКИ рассуждая, должно быть: ты можешь обновить только то, что уже было записано!!!
Это то же самое, что для того, чтобы положить деньги в кошелек, ты должен сначала этот кошелек купить и взять в руки smile.gif

Ноль по умолчанию - это та величина, которая записывается в поле ПРИ СОЗДАНИИ ЗАПИСИ, и только при условии, что ты в явном виде не вносишь ничего другого.

Спустя 1 час, 7 минут, 1 секунда (21.05.2009 - 14:11) glock18 написал(а):
Спасибо sergeiss.


_____________
Напишу индусский код. Бесплатно
Быстрый ответ:

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