Trong cơ sở dữ liệu của tôi, tôi nhận được lỗiKiểm tra kiểu UTF-8 dữ liệu 3-byte, hoặc 4-byte Unicode
com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column
tôi sử dụng Java và MySQL 5. Như tôi biết 4-byte Unicode là i pháp Java , nhưng bất hợp pháp trong MySQL 5, tôi nghĩ rằng nó có thể gây ra vấn đề của tôi và tôi muốn kiểm tra loại dữ liệu của tôi, vì vậy đây là câu hỏi của tôi: Làm thế nào tôi có thể kiểm tra dữ liệu UTF-8 của tôi là Unicode 3 byte hoặc 4 byte ?
Tôi đề nghị xem xét giới hạn độ dài kiểu dữ liệu cột của bạn và kích thước của dữ liệu bạn đang cố gắng để chèn đầu tiên. Nếu bạn đang chèn 100K ký tự vào một 'VARCHAR' không có mã hóa là có lỗi. – Jon
Tôi không nghĩ rằng các ký tự mã hóa UTF-8 4 byte là lý do cho vấn đề này. Nguyên nhân có nhiều khả năng là chuỗi * n * -character nhận * m * byte (với * m *> * n *) khi mã hóa UTF-8, nhưng nên được đưa vào VARCHAR (* n *). –
@Jon Tôi đã kiểm tra nó trước, và đó không phải là vấn đề tôi đã giải quyết nó, nhưng tôi vẫn nghĩ rằng tôi sẽ sử dụng kiểm tra mã hóa trong tương lai, thaks để được giúp đỡ tất cả – akuzma