Странный символ, появляющийся в поле базы данных MySQL - PullRequest
0 голосов
/ 08 ноября 2018

Я импортировал некоторые данные из старой программы FileMaker в базу данных mysql и заметил некоторые странные символы.Как лучше всего избавиться от всего этого?

enter image description here

enter image description here

Ответы [ 2 ]

0 голосов
/ 08 ноября 2018

Я полагаю, что длина вашего varchar переполнена.

Например: поле varchar (10), и вы вводите «STRING OVER 10 CHARACTERS», это может привести к появлению мусора в строке.

0 голосов
/ 08 ноября 2018

Кажется, что данные, которые вы импортировали в базу данных MySQL, имеют другой набор символов (Collation), чем тот, который вы установили при создании таблицы в MySQL.

Я думаю, что эти "странные персонажи" являются смайликами. Которые, например, в кодировке utf8, не определены. Но utf8mb4 они будут.

Краткий ответ: найдите, в какой кодировке изначально были созданы данные, и создайте новую таблицу данных с той же кодировкой.

MySQL Workbench

Charset можно легко манипулировать в MySQL Workbench, щелкнув правой кнопкой мыши по схеме, затем на соответствующей таблице, нажав на гаечный ключ.

Синтаксис SQL

Или через что-то похожее на:

ALTER TABLE YourTableName CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE YourTableName modify name text charset utf8mb4;
...