mysql ошибки значения по умолчанию на новом сервере

У меня странная проблема. Я скопировал исходный код PHP и базу данных MySQL (стандартный экспорт-импорт phpMyAdmin) с одного сервера на другой. На старом сервере все работало нормально, но на новом сервере произошла ошибка базы данных.

Поле ‘xxx’ не имеет значения по умолчанию

Я знаю, как установить значение по умолчанию или нужно передать значение, если null is off, Но почему это работает на старом сервере? Я что-то упустил во время экспорта-импорта? В старой базе нет триггеров. Может, конфигурация другая?

-1

Решение

MySQL, скорее всего, в STRICT Режим. Попробуйте запустить

SET GLOBAL sql_mode=''

или отредактируйте свой my.cnf чтобы убедиться, что вы не устанавливаете STRICT_ALL_TABLES или т.п.

ИЛИ, измените определение таблицы и добавьте значение по умолчанию для поля.

Например:

ALTER TABLE `tableA` CHANGE `field` `field` TEXT NULL

или, дайте ему значение по умолчанию в виде пустой строки:

ALTER TABLE `tableA` CHANGE `field` `field` TEXT NOT NULL DEFAULT ''
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]