Mysql
 sql >> база данни >  >> RDS >> Mysql

Неправилна стойност на низа при опит за вмъкване на UTF-8 в MySQL чрез JDBC?

utf8 на MySQL разрешава само символите на Unicode, които могат да бъдат представени с 3 байта в UTF-8. Тук имате знак, който се нуждае от 4 байта:\xF0\x90\x8D\x83 (U+10343 ГОТИЧЕСКИ ПУСКО ПЛАТНО ).

Ако имате MySQL 5.5 или по-нова версия, можете да промените кодирането на колоните от utf8 до utf8mb4 . Това кодиране позволява съхранение на знаци, които заемат 4 байта в UTF-8.

Може също да се наложи да зададете свойството на сървъра character_set_server към utf8mb4 в конфигурационния файл на MySQL. Изглежда, че Connector/J по подразбиране е 3 -байт Unicode в противен случай :

Например, за да използвате 4-байтови набори от UTF-8 символи с Connector/J, конфигурирайте MySQL сървъра с character_set_server=utf8mb4 и оставете characterEncoding извън свързващия низ Connector/J. След това Connector/J ще открие автоматично настройката UTF-8.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Какво е името на ограничението по подразбиране в MySQL?

  2. JDBC връща изключение на MySQLSyntaxError с правилно изявление

  3. Има ли недостатъци при използването на общ varchar(255) за всички текстови полета?

  4. Въведение във Firebase

  5. Нулирайте Root паролата на MySQL в Windows