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

masalah dengan utf8 di java

Sesuai dengan dokumentasi driver MySQL JDBC Anda juga perlu mengatur pengkodean karakter di URL koneksi JDBC. Ini contohnya:

jdbc:mysql://localhost:3306/db_name?useUnicode=yes&characterEncoding=UTF-8

Jika tidak, driver MySQL JDBC akan menggunakan pengkodean default platform untuk mengonversi karakter menjadi byte sebelum mengirim melalui jaringan, yang dalam kasus Anda tampaknya bukan UTF-8. Semua karakter yang ditemukan kemudian akan diganti dengan tanda tanya.

Juga, saat mengambil data, Anda perlu memastikan bahwa konsol/file tempat Anda menampilkan/menulis karakter juga mendukung/menggunakan UTF-8. Jika tidak, mereka akan menjadi tanda tanya juga. Cara memperbaikinya tergantung pada bagaimana/di mana Anda menampilkan/menulis karakter tersebut.

Lihat juga:

Omong-omong, Anda tidak memerlukan SET NAMES tanya di sini.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mengurai file XML yang sangat besar di php

  2. Bedakan antara 'tidak ada baris yang terpengaruh' dan baris yang berhasil DIPERBARUI--ke nilai yang sama (MySQL dan PHP)

  3. Apakah mungkin untuk mengeksekusi string di MySQL?

  4. Cara memilih kolom untuk tabel INNER JOIN tergantung pada nilai array yang digabungkan

  5. Objek database kelas tidak dapat dikonversi ke string