MySQL 错误 1366: 'Incorrect string value' 解决方法

您遇到的错误信息:

1366 - Incorrect string value: '\xE9\xA9\xAC\xE4\xB8\x8A...' for column '客户姓名' at row 1 时间: 0s

这个错误是因为在'客户姓名'这一列插入了一个包含非 ASCII 字符的字符串,但是在该列的字符集设置中不包含该字符集。在这种情况下,您需要更改字符集或使用适当的字符编码。

解决方法:

  1. 更改数据库字符集:

    • 使用 ALTER DATABASE database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci 命令更改数据库字符集。
    • 使用 ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci 命令更改表格字符集。
  2. 使用适当的字符编码:

    • 在插入数据之前,使用 iconv 或其他工具将字符串转换为 UTF-8 编码。
    • 在您的程序代码中,确保使用正确的字符编码设置。

示例:

假设您要将 '马上发' 插入到 '客户姓名' 列,您可以使用以下代码:

INSERT INTO customerinfo(`客户编号`,`客户姓名`,`客户性别`,`身份证号码`,`客户联系电话`,`客户类型`,`备注信息`) VALUES(124424,'马上发','男',25524555544,15844582,'你们没打','无情');

注意:

  • 使用 utf8mb4 字符集可以支持所有 Unicode 字符。
  • 确保您的应用程序和数据库使用相同的字符编码。
  • 如果您仍然遇到问题,请检查您的数据库连接设置和字符集配置。
MySQL 错误 1366: 'Incorrect string value' 解决方法

原文地址: https://www.cveoy.top/t/topic/nP71 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录