MySQL Incorrect integer value

Обновили сегодня сервер MySQL до версии 5.5.28. Все сайты вроде работали отлично, пока не нужно было выполнить публикацию материалов. По умолчанию ошибки на сайте выключены и не сразу смоли разобраться в чем дело. После отладки выяснилось, что MySQL попросту отказывается вставлять запись из-за некорректно заполненного поля “сортировка”. Тип этого поля в таблице INT и по-умолчанию ставится “0″ самой базой. А так как запись новая – то в форме “сортировка” стояла пустой. Вот сервер и не захотел принимать такую запись. Печально… подумали все. Ведь тогда придется переписывать много кода. Это, конечно нужно делать, но на все сразу времени нет.

Новый сервер MySQL сервер по-умолчанию работает со включенным strict-mode. Нужно просто отключить этот режим. В нашем конфиге (по-умолчанию это my.ini (my.cnf)) нужно удалить строку:

sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

После изменений – сервер нужно перезапустить!

Возврат % от покупок

Другие публикации:



Написать комментарий через:

 
               
  • Локальный блог
  •  
 

Ваш отзыв

Имя *

Почта (скрыта) *

Сайт

Напишите цифрами двa вoceмь двa *

Сообщение

 
Статусы для соц.сетей на ArtKiev Design Studio