Tôi nghĩ nó cũng có thể liên quan đến đối chiếu, nhưng tôi không chắc. Trong trường hợp của tôi, nó chắc chắn đã xảy ra, vì tôi phải hỗ trợ cyrillic.
Hãy thử điều này, hiệu quả với tôi:
-
Đặt đối chiếu ban đầu trong khi tạo cơ sở dữ liệu đích thành
utf8_general_ci
-
Thêm
SET NAMES 'utf8' COLLATE 'utf8_general_ci';
lên đầu tệp sql của bạn -
Chạy
mysql -u root -p --default-character-set=utf8 yourDB < yourSQLfile.sql
Một điều nữa, để có được dữ liệu UTF-8 đúng cách trong cơ sở dữ liệu của bạn, bạn cũng sẽ phải sửa đổi chuỗi kết nối của mình. Ví dụ:
mysql.url=jdbc:mysql://localhost:3306/nbs?useJvmCharsetConverters=false&useDynamicCharsetInfo=false&useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8&useEncoding=true
Ngoài ra, hãy xem vấn đề của tôi là gì đã.