数据库返回“Incorrect string value ”报错

更新时间:

问题描述

在DMS控制台中对RDS MySQL实例或自建MySQL数据库(ECS自建数据库或IDC自建数据库)执行SQL语句时,出现类似如下报错。

Incorrect string value

问题原因

数据写入或数据查询时的数据字符集和表的字符集不兼容。

解决方案

一般拷贝的SQL语句,可能存在隐藏字符的隐患,可使用第三方SQL格式化工具,确保拷贝的SQL语句,不存在隐藏字符。然后根据现场情况,选择下列对应的步骤:

  • 数据变更
    若执行数据变更语句提示以上报错,请检查涉及的数据变更语句,是否存在异常。
  • 数据查询
    1. 登录DMS控制台
    2. 在顶部菜单栏中,选择SQL窗口,登录对应的数据库
    3. SQLConsole页签,右上角的扩展功能区域,单击表列表表详情
    4. 确认数据查询时的数据字符集和表的字符集不兼容。
      Dingtalk_20201119163324 (1).jpg
    5. SQLConsole页签选择设置,选择与表相同的字符集形式。

适用于

  • 数据管理DMS
  • 云数据RDS MySQL版
    说明:本文问题同样适用于自建MySQL数据库,即ECS自建数据库和IDC自建数据库。