Прежде всего, извините за мой язык.
На самом деле я пытался переместить приложение PHP, использующее MySQL 4, на другой сервер, использующий MySQL 5.6.11.
Как и у многих людей, у меня была проблема: "Incorrect integer value: '' for column 'id' at row 1"
Я понял, в чем проблема, но выбор, который меня не удовлетворил.
Варианты:
Как вы думаете, есть другое решение, которое я не нашел?
Это происходит, когда INSERT
происходит с пустой строкой для идентификатора, как это:
INSERT INTO TABLE SET id = ''
Чтобы это исправить, предполагая, что id является первичным ключом, ищите в файлах вашего проекта INSERT INTO
найти все запросы вставки и полностью удалить идентификатор из списка столбцов.
Затем в MySQL сделайте столбец id auto increment
,
Теперь, когда запись вставляется, id автоматически получает уникальное целочисленное значение.
Если идентификатор не Первичный ключ, снова выполните поиск в файлах вашего проекта для INSERT INTO
и сделать значение идентификатора NULL
:
INSERT INTO TABLE SET id = NULL
Других решений пока нет …