Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
1 2009-12-14 00:26:28
- aler
- Редкий гость
- Неактивен
- Зарегистрирован: 2009-12-13
- Сообщений: 7
Тема: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
Уважаемые форумчане, ОЧЕНЬ СРОЧНО НУЖНА ВАША ПОМОЩЬ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
При добавлении данных в таблицу выдает ошибку (#1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In)
Как ее решить????
вот таблица:
Поле Тип Ноль По умолчанию Допольнительно
id int(4) Да NULL auto_increment
title varchar(255) Да NULL
description text Да NULL
text text Да NULL
date date Да 000-00-00
author varchar(255) Да NULL
а вот запрос на добавление инфи:
mysql_query(«INSERT INTO news (title,description,text,date,author) VALUE (‘$title’,’$description’,’$text’,’$date’,’$author’)»);
2 Ответ от Hanut 2009-12-14 00:51:26
- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,723
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
aler
В таблице уберите у поля id значение по умолчанию. В поле «Ноль» должно быть «нет», в поле «По умолчанию» — тоже «нет». Так же поле id должно быть первичным ключом (проверьте индекс).
3 Ответ от aler 2009-12-14 09:57:04 (изменено: aler, 2009-12-14 10:00:09)
- aler
- Редкий гость
- Неактивен
- Зарегистрирован: 2009-12-13
- Сообщений: 7
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
Hanut сказал:
aler
В таблице уберите у поля id значение по умолчанию. В поле «Ноль» должно быть «нет», в поле «По умолчанию» — тоже «нет». Так же поле id должно быть первичным ключом (проверьте индекс).
я сам над этим думал. НО! при создании таблицы я все значения ставлю NOT NULL и в самой структуре таблицы после создания тоже стоят эти значения. А после того как просматриваешь свойства таблици все значения становятся в NULL. Сколько раз не пробовал поменять все равно тоже самое.
id у меня является первичным ключом. Может это глюк самого phpmyadmina или mysql?
И еще, когда вручную указываешь id все данные занюсятся в таблицу.
4 Ответ от Hanut 2009-12-14 12:14:01
- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,723
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
aler
Попробуйте найти конфигурационный файл MySQL (my.ini./my.cnf) и поправить в нем строку (если она выглядит иначе):
sql-mode=»STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION»
5 Ответ от aler 2009-12-14 14:51:45
- aler
- Редкий гость
- Неактивен
- Зарегистрирован: 2009-12-13
- Сообщений: 7
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
Hanut сказал:
aler
Попробуйте найти конфигурационный файл MySQL (my.ini./my.cnf) и поправить в нем строку (если она выглядит иначе):
sql-mode=»STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION»
в своем MySQL нашел файл my.cnf но там вообще такой строки нету.
Кстате auto_increment начинает работать когда добавишь пару записей вручную с указанием id. После этого спокойно добавляет с формы.
Ничего не могу понять……..
6 Ответ от Hanut 2009-12-14 22:31:13
- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,723
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
Попробуйте добавить эту строку в my.cnf, в раздел [mysqld].
Не должно быть, чтобы без выставления NULL оно добавлялось автоматически.
7 Ответ от aler 2009-12-15 01:44:41
- aler
- Редкий гость
- Неактивен
- Зарегистрирован: 2009-12-13
- Сообщений: 7
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
Hanut сказал:
Попробуйте добавить эту строку в my.cnf, в раздел [mysqld].
Не должно быть, чтобы без выставления NULL оно добавлялось автоматически.
Вставил эту строчку куда вы сказали. Никаких изменений.
И еще один вопросик: Какую кодировку использовать когда добавляешь данные на русском или украинском языке? а то в базе отображаются знаки вопроса (?????)
8 Ответ от Hanut 2009-12-15 13:13:45
- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,723
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
aler
Кодировка в БД зависит от кодировки страниц сайта: если сайт в windows-1251, то таблицы должны иметь сравнение cp1251_general_ci; если в utf-8, то utf8_general_ci.
Если вы сами пишите скрипт вставки данных, то обязательно сразу после функции mysql_connect добавьте строку определяющую кодировку соединения с MySQL:
mysql_query('SET NAMES cp1251'); // utf8 - для страниц в кодировке utf-8.
9 Ответ от aler 2009-12-15 14:18:28
- aler
- Редкий гость
- Неактивен
- Зарегистрирован: 2009-12-13
- Сообщений: 7
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
Hanut сказал:
aler
Кодировка в БД зависит от кодировки страниц сайта: если сайт в windows-1251, то таблицы должны иметь сравнение cp1251_general_ci; если в utf-8, то utf8_general_ci.Если вы сами пишите скрипт вставки данных, то обязательно сразу после функции mysql_connect добавьте строку определяющую кодировку соединения с MySQL:
mysql_query('SET NAMES cp1251'); // utf8 - для страниц в кодировке utf-8.
Большое спасибо. вот это мне и нужно было.
10 Ответ от aler 2009-12-21 22:12:58
- aler
- Редкий гость
- Неактивен
- Зарегистрирован: 2009-12-13
- Сообщений: 7
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
Все равно ничего не пойму, почему id не ставится автоматически… и как не крутил NULL ставится само по себе.
11 Ответ от Hanut 2009-12-22 00:10:45
- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,723
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
aler
Скопируйте сюда структуру таблицы. Пока у меня нет идей почему так получается.
12 Ответ от aler 2009-12-22 00:15:15
- aler
- Редкий гость
- Неактивен
- Зарегистрирован: 2009-12-13
- Сообщений: 7
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
Hanut сказал:
aler
Скопируйте сюда структуру таблицы. Пока у меня нет идей почему так получается.
Поле Тип Сравнение Атрибуты Ноль По умолчанию Дополнительно
id int(4) Да NULL auto_increment
login varchar(20) Да NULL
password varchar(20) Да NULL
вот такая структура.
13 Ответ от Hanut 2009-12-22 12:07:00
- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,723
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
aler
Я имел в виду структуру в виде SQL запроса. Увидеть ее можно если выбрать таблицу, затем перейти на страницу экспорта, там убрать галочку в блоке данных и не выставлять галочку сохранения в файл. Тогда структура будет выведена прямо в phpMyAdmin.
14 Ответ от Hanut 2010-05-20 11:56:07
- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,723
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
alex252003
Строка
SET SQL_MODE=»NO_AUTO_VALUE_ON_ZERO»;
Будет в дампе всегда, это необходимо для корректной вставки значений в поле имеющее параметр автоувеличения (AUTO_INCREMENT).
Влияет режим NO_AUTO_VALUE_ON_ZERO только на те значения, которые для поля id будут нулем. Если в дампе есть такие значения, значит будет выводиться ошибка.
В крайнем случае, можете перед импортом дампа закомментировать строку таким образом:
— SET SQL_MODE=»NO_AUTO_VALUE_ON_ZERO»;
15 Ответ от alex252003 2010-05-20 12:08:13
- alex252003
- Редкий гость
- Неактивен
- Зарегистрирован: 2010-05-20
- Сообщений: 2
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
Hanut сказал:
alex252003
Строка
SET SQL_MODE=»NO_AUTO_VALUE_ON_ZERO»;
Будет в дампе всегда, это необходимо для корректной вставки значений в поле имеющее параметр автоувеличения (AUTO_INCREMENT).Влияет режим NO_AUTO_VALUE_ON_ZERO только на те значения, которые для поля id будут нулем. Если в дампе есть такие значения, значит будет выводиться ошибка.
В крайнем случае, можете перед импортом дампа закомментировать строку таким образом:
— SET SQL_MODE=»NO_AUTO_VALUE_ON_ZERO»;
спасибо уже разобрался, окзалось дело в кодировке, я поставил в файле my.ini кодировку:
default-character-set=cp1251
и в таблице поставил сравнение cp1251_general_ci
и все заработало
зы я свое сообщение удалил а потом только увидел что вы уже ответили
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Содержание
- #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
- Сообщения 15
- 1 Тема от aler 2009-12-14 00:26:28
- Тема: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
- 2 Ответ от Hanut 2009-12-14 00:51:26
- Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
- 3 Ответ от aler 2009-12-14 09:57:04 (изменено: aler, 2009-12-14 10:00:09)
- Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
- 4 Ответ от Hanut 2009-12-14 12:14:01
- Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
- 5 Ответ от aler 2009-12-14 14:51:45
- Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
- 6 Ответ от Hanut 2009-12-14 22:31:13
- Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
- 7 Ответ от aler 2009-12-15 01:44:41
- Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
- 8 Ответ от Hanut 2009-12-15 13:13:45
- Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
- 9 Ответ от aler 2009-12-15 14:18:28
- Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
- 10 Ответ от aler 2009-12-21 22:12:58
- Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
- 11 Ответ от Hanut 2009-12-22 00:10:45
- Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
- 12 Ответ от aler 2009-12-22 00:15:15
- Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
- 13 Ответ от Hanut 2009-12-22 12:07:00
- Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
- 14 Ответ от Hanut 2010-05-20 11:56:07
- Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
- 15 Ответ от alex252003 2010-05-20 12:08:13
- Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
- MySQL — How to fix the ‘Incorrect string value’ error
- Level up your programming skills
- About
#1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
Форум PHP-MyAdmin.RU → MySQL & phpMyAdmin → #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Сообщения 15
1 Тема от aler 2009-12-14 00:26:28
- aler
- Редкий гость
- Неактивен
- Зарегистрирован: 2009-12-13
- Сообщений: 7
Тема: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
Уважаемые форумчане, ОЧЕНЬ СРОЧНО НУЖНА ВАША ПОМОЩЬ.
При добавлении данных в таблицу выдает ошибку (#1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In)
Как ее решить.
вот таблица:
Поле Тип Ноль По умолчанию Допольнительно
id int(4) Да NULL auto_increment
title varchar(255) Да NULL
description text Да NULL
text text Да NULL
date date Да 000-00-00
author varchar(255) Да NULL
а вот запрос на добавление инфи:
mysql_query(«INSERT INTO news (title,description,text,date,author) VALUE (‘$title’,’$description’,’$text’,’$date’,’$author’)»);
2 Ответ от Hanut 2009-12-14 00:51:26
- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,722
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
aler
В таблице уберите у поля id значение по умолчанию. В поле «Ноль» должно быть «нет», в поле «По умолчанию» — тоже «нет». Так же поле id должно быть первичным ключом (проверьте индекс).
3 Ответ от aler 2009-12-14 09:57:04 (изменено: aler, 2009-12-14 10:00:09)
- aler
- Редкий гость
- Неактивен
- Зарегистрирован: 2009-12-13
- Сообщений: 7
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
aler
В таблице уберите у поля id значение по умолчанию. В поле «Ноль» должно быть «нет», в поле «По умолчанию» — тоже «нет». Так же поле id должно быть первичным ключом (проверьте индекс).
я сам над этим думал. НО! при создании таблицы я все значения ставлю NOT NULL и в самой структуре таблицы после создания тоже стоят эти значения. А после того как просматриваешь свойства таблици все значения становятся в NULL. Сколько раз не пробовал поменять все равно тоже самое.
id у меня является первичным ключом. Может это глюк самого phpmyadmina или mysql?
И еще, когда вручную указываешь id все данные занюсятся в таблицу.
4 Ответ от Hanut 2009-12-14 12:14:01
- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,722
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
aler
Попробуйте найти конфигурационный файл MySQL (my.ini./my.cnf) и поправить в нем строку (если она выглядит иначе):
sql-mode=»STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION»
5 Ответ от aler 2009-12-14 14:51:45
- aler
- Редкий гость
- Неактивен
- Зарегистрирован: 2009-12-13
- Сообщений: 7
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
aler
Попробуйте найти конфигурационный файл MySQL (my.ini./my.cnf) и поправить в нем строку (если она выглядит иначе):
sql-mode=»STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION»
в своем MySQL нашел файл my.cnf но там вообще такой строки нету.
Кстате auto_increment начинает работать когда добавишь пару записей вручную с указанием id. После этого спокойно добавляет с формы.
Ничего не могу понять.
6 Ответ от Hanut 2009-12-14 22:31:13
- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,722
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
Попробуйте добавить эту строку в my.cnf, в раздел [mysqld].
Не должно быть, чтобы без выставления NULL оно добавлялось автоматически.
7 Ответ от aler 2009-12-15 01:44:41
- aler
- Редкий гость
- Неактивен
- Зарегистрирован: 2009-12-13
- Сообщений: 7
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
Попробуйте добавить эту строку в my.cnf, в раздел [mysqld].
Не должно быть, чтобы без выставления NULL оно добавлялось автоматически.
Вставил эту строчку куда вы сказали. Никаких изменений.
И еще один вопросик: Какую кодировку использовать когда добавляешь данные на русском или украинском языке? а то в базе отображаются знаки вопроса (. )
8 Ответ от Hanut 2009-12-15 13:13:45
- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,722
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
aler
Кодировка в БД зависит от кодировки страниц сайта: если сайт в windows-1251, то таблицы должны иметь сравнение cp1251_general_ci; если в utf-8, то utf8_general_ci.
Если вы сами пишите скрипт вставки данных, то обязательно сразу после функции mysql_connect добавьте строку определяющую кодировку соединения с MySQL:
9 Ответ от aler 2009-12-15 14:18:28
- aler
- Редкий гость
- Неактивен
- Зарегистрирован: 2009-12-13
- Сообщений: 7
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
aler
Кодировка в БД зависит от кодировки страниц сайта: если сайт в windows-1251, то таблицы должны иметь сравнение cp1251_general_ci; если в utf-8, то utf8_general_ci.
Если вы сами пишите скрипт вставки данных, то обязательно сразу после функции mysql_connect добавьте строку определяющую кодировку соединения с MySQL:
Большое спасибо. вот это мне и нужно было.
10 Ответ от aler 2009-12-21 22:12:58
- aler
- Редкий гость
- Неактивен
- Зарегистрирован: 2009-12-13
- Сообщений: 7
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
Все равно ничего не пойму, почему id не ставится автоматически. и как не крутил NULL ставится само по себе.
11 Ответ от Hanut 2009-12-22 00:10:45
- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,722
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
aler
Скопируйте сюда структуру таблицы. Пока у меня нет идей почему так получается.
12 Ответ от aler 2009-12-22 00:15:15
- aler
- Редкий гость
- Неактивен
- Зарегистрирован: 2009-12-13
- Сообщений: 7
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
aler
Скопируйте сюда структуру таблицы. Пока у меня нет идей почему так получается.
Поле Тип Сравнение Атрибуты Ноль По умолчанию Дополнительно
id int(4) Да NULL auto_increment
login varchar(20) Да NULL
password varchar(20) Да NULL
вот такая структура.
13 Ответ от Hanut 2009-12-22 12:07:00
- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,722
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
aler
Я имел в виду структуру в виде SQL запроса. Увидеть ее можно если выбрать таблицу, затем перейти на страницу экспорта, там убрать галочку в блоке данных и не выставлять галочку сохранения в файл. Тогда структура будет выведена прямо в phpMyAdmin.
14 Ответ от Hanut 2010-05-20 11:56:07
- Hanut
- Модератор
- Неактивен
- Откуда: Рига, Латвия
- Зарегистрирован: 2006-07-02
- Сообщений: 9,722
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
alex252003
Строка
SET SQL_MODE=»NO_AUTO_VALUE_ON_ZERO»;
Будет в дампе всегда, это необходимо для корректной вставки значений в поле имеющее параметр автоувеличения (AUTO_INCREMENT).
Влияет режим NO_AUTO_VALUE_ON_ZERO только на те значения, которые для поля id будут нулем. Если в дампе есть такие значения, значит будет выводиться ошибка.
В крайнем случае, можете перед импортом дампа закомментировать строку таким образом:
— SET SQL_MODE=»NO_AUTO_VALUE_ON_ZERO»;
15 Ответ от alex252003 2010-05-20 12:08:13
- alex252003
- Редкий гость
- Неактивен
- Зарегистрирован: 2010-05-20
- Сообщений: 2
Re: #1366 — Incorrect integer value: » for column ‘id’ at row 1#1366 — In
alex252003
Строка
SET SQL_MODE=»NO_AUTO_VALUE_ON_ZERO»;
Будет в дампе всегда, это необходимо для корректной вставки значений в поле имеющее параметр автоувеличения (AUTO_INCREMENT).
Влияет режим NO_AUTO_VALUE_ON_ZERO только на те значения, которые для поля id будут нулем. Если в дампе есть такие значения, значит будет выводиться ошибка.
В крайнем случае, можете перед импортом дампа закомментировать строку таким образом:
— SET SQL_MODE=»NO_AUTO_VALUE_ON_ZERO»;
спасибо уже разобрался, окзалось дело в кодировке, я поставил в файле my.ini кодировку:
default-character-set=cp1251
и в таблице поставил сравнение cp1251_general_ci
и все заработало
зы я свое сообщение удалил а потом только увидел что вы уже ответили
Источник
MySQL — How to fix the ‘Incorrect string value’ error
Posted on Dec 15, 2021
When you try to insert a new record into your MySQL database table, you may encounter an error saying Incorrect string value along with some UTF-8 hex code for the description.
For example, suppose you create a Test table with only one column as follows:
Next, let’s insert the following Egyptian hieroglyph character into the table:
Your MySQL server may respond with the following error:
The error above is because the character 𓀀 requires 4-bytes to be represented in UTF-8 encoding.
By default, MySQL databases and tables are created using a UTF-8 with 3-bytes encoding. You can see the encoding used for your table by using the SHOW CREATE TABLE statement as follows:
Here’s the result from my computer:
As you can see, the table uses the DEFAULT CHARSET=utf8mb3 and the names column uses CHARACTER SET utf8 .
The MySQL utf8 or utf8mb3 can’t store string values that contain a UTF-8 4-bytes character.
To store the values, you need to use the utf8mb4 character set.
Here’s the query to alter your database, table, or column to utf8mb4 character set:
When you change the character set on the database level, then any new table you create for that database in the future will use that character set as the default encoding.
Returning to the Test table, you can alter just the names column to make the INSERT statement works:
Now you should be able to insert the character 𓁴 into the table:
By default, MySQL version 8 should use utf8mb4 encoding and collation for your databases. If you see utf8 or utf8mb3 , then you might be using MySQL version below 8 (MySQL version 5 may default to utf8mb3 ).
When you encounter this error, pay attention to the characters that you want to insert into the database.
They may look like normal characters, but if you copy and paste them from some source, then they may have a strange encoding attached to them.
For example, the GOTHIC LETTER SAUIL 𐍃 looks like a normal capital S but actually a 4-bytes character:
Alternatively, you can also pass the hex code ( xF0x90x8Dx83 in the example above) into Google to look for the exact character that causes the error.
To conclude, the ERROR 1366: Incorrect string value happens when MySQL can’t insert the value you specified into the table because of incompatible encoding.
You need to modify or remove characters that have 4-bytes UTF-8 encoding, or you can change the encoding and collation used by MySQL.
Note that utf8 in MySQL always refers to utf8mb3 .
To use the 4-bytes UTF-8 encoding, it needs to be specified as utf8mb4 .
With this information, you should now be able to resolve this error. Feel free to use the provided ALTER statements above if you need it 👍
Level up your programming skills
I’m sending out an occasional email with the latest programming tutorials. Drop your email in the box below and I’ll send new stuff straight into your inbox!
About
Nathan Sebhastian is a software engineer with a passion for writing tech tutorials.
Learn JavaScript and other web development technology concepts through easy-to-understand explanations written in plain English.
Источник
Hello to everybody !
Could someone kindly help me? I’m trying to install MentionMe about ACP and when i click ‘install’ this is the error of mysql :
MyBB SQL Error
MyBB has experienced an internal SQL error and cannot continue.
SQL Error:
1366 — Incorrect integer value: ‘NULL’ for column ‘sid’ at row 1
Query:
INSERT INTO mybb_settings (sid
,name
,title
,description
,optionscode
,value
,disporder
,gid
) VALUES (‘NULL’,’mention_auto_complete’,’Auto-Complete Mentions?’,’YES (default) to autocomplete mentions as they are typed on showthread in Quick Reply and full post/edit pages’,’yesno’,’1′,’10’,44), (‘NULL’,’mention_max_items’,’Maximum Items In Popup’,’if autocomplete is used, this setting will limit the size of the popup’,’text’,’5′,’20’,44), (‘NULL’,’mention_get_thread_participants’,’Retrieve Thread Participants?’,’YES (default) to include and proritize highly names of users who have participated in the current thread’,’yesno’,’1′,’30’,44), (‘NULL’,’mention_full_text_search’,’Full Text Search?’,’YES to match characters in the autocomplete popup anywhere in the username, NO (default) to search for usernames that start with the typed characters’,’yesno’,’0′,’40’,44), (‘NULL’,’mention_show_avatars’,’Show User Avatars?’,’YES (default) to show user avatars in the autocomplete popup, NO to show usernames only’,’yesno’,’1′,’50’,44), (‘NULL’,’mention_add_postbit_button’,’Add a Postbit Button?’,’YES to add a button to each post allowing users to tag multiple members to mention (NO by default)’,’yesno’,’0′,’60’,44), (‘NULL’,’mention_multiple’,’Multiple Mentions?’,’YES (default) to mimic the multi-quote feature or NO to instantly insert the mention on clickThe postbit button setting must be set to YES for this setting to take effect‘,’yesno’,’0′,’70’,44), (‘NULL’,’mention_format_names’,’Format Usernames?’,’YES (default) to format user names according to their display group, NO to format mentions as plain links’,’yesno’,’1′,’80’,44), (‘NULL’,’mention_display_symbol’,’Display Symbol’,’Set this to @ or another symbol to use to prefix mentions, leave blank for no prefix’,’text’,’@’,’90’,44), (‘NULL’,’mention_cache_time’,’Cache Cut-off Time’,’The task caches usernames based on when they were last active. In days, specify how far back to go. (Large forums should stick with low numbers to reduce the size of the namecache)’,’text’,’7′,’100′,44), (‘NULL’,’mention_minify_js’,’Minify JavaScript?’,’YES (default) to serve client-side scripts minified to increase performance, NO to serve beautiful, commented code ;)’,’yesno’,’1′,’110′,44), (‘NULL’,’mention_advanced_matching’,’Enable Advanced Matching?’,’This option allows user names with whitespace to be processed by MentionMe without the necessity of enclosing user names in double quotes.
This feature can greatly increase the server load and is not recommended for large forums.’,’yesno’,’0′,’120′,44)
Please could someone help me ?
Thank you very much !
Thanks for the report. I’ll have a look asap
Still getting the same error on Installation.
`MyBB has experienced an internal SQL error and cannot continue.
SQL Error:
1366 — Incorrect integer value: ‘NULL’ for column ‘sid’ at row 1
Query:
INSERT INTO mybb_settings (sid
,name
,title
,description
,optionscode
,value
,disporder
,gid
) VALUES (‘NULL’,’mention_auto_complete’,’Auto-Complete Mentions?’,’YES (default) to autocomplete mentions as they are typed on showthread in Quick Reply and full post/edit pages’,’yesno’,’1′,’10’,37), (‘NULL’,’mention_max_items’,’Maximum Items In Popup’,’if autocomplete is used, this setting will limit the size of the popup’,’text’,’5′,’20’,37), (‘NULL’,’mention_get_thread_participants’,’Retrieve Thread Participants?’,’YES (default) to include and proritize highly names of users who have participated in the current thread’,’yesno’,’1′,’30’,37), (‘NULL’,’mention_full_text_search’,’Full Text Search?’,’YES to match characters in the autocomplete popup anywhere in the username, NO (default) to search for usernames that start with the typed characters’,’yesno’,’0′,’40’,37), (‘NULL’,’mention_show_avatars’,’Show User Avatars?’,’YES (default) to show user avatars in the autocomplete popup, NO to show usernames only’,’yesno’,’1′,’50’,37), (‘NULL’,’mention_add_postbit_button’,’Add a Postbit Button?’,’YES to add a button to each post allowing users to tag multiple members to mention (NO by default)’,’yesno’,’0′,’60’,37), (‘NULL’,’mention_multiple’,’Multiple Mentions?’,’YES (default) to mimic the multi-quote feature or NO to instantly insert the mention on click
The postbit button setting must be set to YES for this setting to take effect‘,’yesno’,’0′,’70’,37), (‘NULL’,’mention_format_names’,’Format Usernames?’,’YES (default) to format user names according to their display group, NO to format mentions as plain links’,’yesno’,’1′,’80’,37), (‘NULL’,’mention_display_symbol’,’Display Symbol’,’Set this to @ or another symbol to use to prefix mentions, leave blank for no prefix’,’text’,’@’,’90’,37), (‘NULL’,’mention_cache_time’,’Cache Cut-off Time’,’The task caches usernames based on when they were last active. In days, specify how far back to go. (Large forums should stick with low numbers to reduce the size of the namecache)’,’text’,’7′,’100′,37), (‘NULL’,’mention_minify_js’,’Minify JavaScript?’,’YES (default) to serve client-side scripts minified to increase performance, NO to serve beautiful, commented code ;)’,’yesno’,’1′,’110′,37), (‘NULL’,’mention_advanced_matching’,’Enable Advanced Matching?’,’This option allows user names with whitespace to be processed by MentionMe without the necessity of enclosing user names in double quotes.
This feature can greatly increase the server load and is not recommended for large forums.’,’yesno’,’0′,’120′,37)`
Sorry, I haven’t had much time to maintian my MyBB plugins lately. The error is caused by the values in inc/plugins/MentionMe/install_data.php for the SID
field. Changing them to the number 0
rather than 'NULL'
or whatever they are currently will solve the issue.
Skip to content
Trying to load a colon separated file into a MySQL database table I ran into an error 1366.
1366 Error Incorrect Integer Value for Column 'MyIntegerColumn' at Row 1
The format of MyIntegerColumn was INT as you could imagine.
The point is that missing values in the .csv file where interpreted as an empty string (”) and MySQL 5.1 complains about putting a string record into an integer variable. I did not find any usefull solution via google: how to load missing values as NULL into an integer column.
The MySQL-Reference solved the problem:
Handling of NULL values varies according to the FIELDS and LINES options in use:
For the default FIELDS and LINES values, NULL is written as a field value of N for output, and a field value of N is read as NULL for input (assuming that the ESCAPED BY character is “”).
Since the ESCAPED BY character is “” by default, it is sufficient to open the text/csv file and substitute two consecutive fieldseparators (‘,,’ e.g.) with ‘,N,’. Save the file and repeat your loading syntax. In my case it was:
LOAD DATA LOCAL INFILE '/path/to/YourLoadFile.csv' INTO TABLE YourTargetTable FIELDS TERMINATED BY ',' IGNORE 1 LINES;
Voila. Worked for me.