MySQL error 1366 (добавление кириллических символов)

252
12 июня 2019, 21:50

В БД имеется таблица, созданная запросом

CREATE TABLE `subject` (
  `SUBJ_ID` decimal(10,0) NOT NULL,
  `SUBJ_NAME` varchar(60) CHARACTER SET latin1 DEFAULT NULL,
  `HOUR` decimal(10,0) DEFAULT NULL,
  `SEMESTER` decimal(10,0) DEFAULT NULL,
  PRIMARY KEY (`SUBJ_ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

При попытке совершить запрос

insert into SUBJECT (SUBJ_ID, SUBJ_NAME, HOUR, SEMESTER) values (1, 'Биология', 119, 1);

Возникает ошибка

Error Code: 1366. Incorrect string value: '\xD0\x91\xD0\xB8\xD0\xBE...' for column 'SUBJ_NAME' at row 1

Почему возникают проблемы с кодировкой?

Answer 1

Потому что поле SUBJ_NAME с кодировкой latin1: https://cs.stanford.edu/people/miles/iso8859.html а вы пытаетесь внести текст 'Биология' в это поле.

READ ALSO
Windows->Docker->mysql

Windows->Docker->mysql

Для удобства я создал dockerfile, который собирает на основе debian образ с mysqlОчень удобно

144
Как выполнить запрос на сервер при изменении значения input

Как выполнить запрос на сервер при изменении значения input

Можно ли выполнить запрос к файлу на сервере, когда закончил вводить значения в input? Я делаю следующее:

141
Задний фон для блоков

Задний фон для блоков

На сайте есть 2 блока div, нужно на эти 2 блока поставить задний фон, но не понимаю как это сделать, попытался обернуть их в еще в один div и поставить...

152
Подключение внешних элементов

Подключение внешних элементов

суть в чем, на пхп можно подключить часть верстки которая находится в отдельном html файле скриптом,

153