Я пытаюсь сохранить некоторые данные в базе данных mysql, ввод содержит символы эмодзи, например: '\U0001f60a\U0001f48d', и я получаю эту ошибку:
1366, "Incorrect string value: '\\xF0\\x9F\\x98\\x8A\\xF0\\x9F...' for column 'caption' at row 1"
Я искал в сети и прочитал много ответов, включая следующие: или MySQL utf8mb4, ошибки при сохранении эмодзи или https://mathiasbynens.be/notes/mysql-utf8mb4#character-sets или http://www.java2s.com/Tutorial/MySQL/0080__Table/charactersetsystem.htm но ничего не получилось!!
У меня разные проблемы:
вот информация mydb:
mysql> SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';
+--------------------------+--------------------+
| Variable_name | Value |
+--------------------------+--------------------+
| character_set_client | utf8mb4 |
| character_set_connection | utf8mb4 |
| character_set_database | utf8mb4 |
| character_set_filesystem | binary |
| character_set_results | utf8mb4 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| collation_connection | utf8mb4_general_ci |
| collation_database | utf8mb4_general_ci |
| collation_server | utf8_general_ci |
+--------------------------+--------------------+
10 rows in set (0.00 sec)
Я попытался изменить значение character_set_server
на utf8mb4
с помощью
mysql>SET character_set_server = utf8mb4
Query OK, 0 rows affected (0.00 sec)
Но при перезагрузке mysqld
все возвращается!
У меня также нет файла /etc/my.cnf
, и вместо этого я отредактировал файл /etc/mysql/my.cnf
.
Что я должен делать? Как я могу сохранить файл смайликов в моей базе данных?
django.db.backends.mysql
в качестве движка для подключения к серверу MySQL. - person Hosein Remezan   schedule 20.04.2016