Максимальные значения полей типа int. Откуда они такие беруться ?

Adelf

Administrator
Команда форума
Вася Патриков
16777215 - это максимальное значение для типа mediumint на текущей системе... но я уверен на все 100% в данных случаях, что не мог UPDATE-запрос выполниться 16777215 раз. Так откуда тогда такие числа там беруться ?
Вот данное предложение твое показывает, что когда ты создавал тему, то не знал в чем вообще проблема. Я просто пытался тебе намекнуть на довольно простую причину сей странности.
А уж как этого избежать - другой вопрос. Тут товарищ zerkms тебе подсказал уже вроде. Либо триггер, либо проверка перед update.
 

dadoc

Новичок
Я думаю тут лучще без триггера обойтись простым SQL.

PHP:
UPDATE ...   score_1 = IF(score_1 > 0, score_1 - 1, 0) ...
 

Mols

Новичок
Вася Патриков
Мде...
Вот ещё вариант.
[SQL]
WHERE your_condition AND score_1 > 0
[/SQL]
 
Сверху