Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Nilai string salah saat mencoba memasukkan UTF-8 ke MySQL melalui JDBC?

utf8 MySQL hanya mengizinkan karakter Unicode yang dapat direpresentasikan dengan 3 byte dalam UTF-8. Di sini Anda memiliki karakter yang membutuhkan 4 byte:\xF0\x90\x8D\x83 (U+10343 GOTHIC SURAT SAUIL ).

Jika Anda memiliki MySQL 5.5 atau lebih baru, Anda dapat mengubah pengkodean kolom dari utf8 ke utf8mb4 . Encoding ini memungkinkan penyimpanan karakter yang menempati 4 byte dalam UTF-8.

Anda mungkin juga harus menyetel properti server character_set_server ke utf8mb4 dalam file konfigurasi MySQL. Tampaknya Connector/J default ke 3 -byte Unicode sebaliknya :

Misalnya, untuk menggunakan set karakter UTF-8 4-byte dengan Connector/J, konfigurasikan server MySQL dengan character_set_server=utf8mb4 , dan tinggalkan characterEncoding keluar dari string koneksi Connector/J. Connector/J kemudian akan otomatis mendeteksi pengaturan 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. Gabung Kiri tidak mengembalikan semua baris

  2. Masukkan data dari satu tabel ke tabel lain di MySQL

  3. MySQL Query GROUP MENURUT hari / bulan / tahun

  4. MySQL:Cara tercepat untuk menghitung jumlah baris

  5. Kapitalisasi huruf pertama setiap kata, di tabel yang ada