MySQL 错误 'Incorrect string value' 解释及解决方法
这个错误表示在第一行的'客户姓名'列中出现了不正确的字符串值'æ¹æ...',可能是因为该值包含了不被MySQL支持的字符编码,例如UTF-8之外的编码。
解决方法:
-
确认数据库和数据表的字符集:
- 使用
SHOW VARIABLES LIKE 'character_set_database';查看数据库字符集。 - 使用
SHOW CREATE TABLE table_name;查看数据表字符集。
- 使用
-
调整字符集:
- 如果数据库或数据表字符集不是 UTF-8,则需要将其更改为 UTF-8。
- 使用
ALTER DATABASE database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;更改数据库字符集。 - 使用
ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;更改数据表字符集。
-
检查数据编码:
- 确保数据以 UTF-8 编码存储,例如在应用程序中设置编码为 UTF-8。
-
使用转义字符:
- 如果数据中包含特殊字符,可以使用转义字符来处理。
示例:
INSERT INTO table_name (客户姓名) VALUES ('\xE6\x96\xB9\xE6\x9F\x90...');
注意:
- 使用
utf8mb4字符集可以存储更广泛的 Unicode 字符。 - 更改字符集可能会导致数据丢失,请谨慎操作。
原文地址: https://www.cveoy.top/t/topic/nP7D 著作权归作者所有。请勿转载和采集!