Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

vấn đề với utf8 trong java

Theo tài liệu trình điều khiển MySQL JDBC bạn cũng cần đặt mã hóa ký tự trong URL kết nối JDBC. Đây là một ví dụ:

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

Nếu không, trình điều khiển MySQL JDBC sẽ sử dụng mã hóa mặc định của nền tảng để chuyển đổi các ký tự thành byte trước khi gửi qua mạng, trong trường hợp của bạn dường như không phải là UTF-8. Sau đó, tất cả các ký tự không được che sẽ được thay thế bằng dấu chấm hỏi.

Ngoài ra, khi truy xuất dữ liệu, bạn cần đảm bảo rằng bảng điều khiển / tệp nơi bạn đang hiển thị / ghi các ký tự cũng hỗ trợ / sử dụng UTF-8. Nếu không chúng cũng sẽ trở thành dấu chấm hỏi. Cách khắc phục điều đó phụ thuộc vào cách / vị trí bạn đang hiển thị / ghi các ký tự đó vào.

Xem thêm:

Nhân tiện, bạn không cần SET NAMES truy vấn tại đây.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cập nhật nhiều hàng với các giá trị khác nhau

  2. Tại sao MYSQL cao hơn LIMIT bù đắp làm chậm truy vấn?

  3. Lỗi cú pháp SQL gần mô tả

  4. Xóa các từ trùng lặp khỏi trường trong mysql

  5. Biểu mẫu Html / Php không thêm vào cơ sở dữ liệu SQL