首页 > 数据库 >Mysql错误问题记录

Mysql错误问题记录

时间:2023-01-04 16:22:05浏览次数:35  
标签:编码 set 错误 记录 default utf8 character 标签 Mysql

① Incorrect string value: '\xE6\x94\xBE\xE5\xA4\xA7...' for column 'name' at row 1 Query……

原因:编码不匹配。数据库是latin1编码,而插入的中文字符串是utf-8编码。

解决思路:

一、修改数据库的编码。

这个解决办法一劳永逸,省去大量的编码转换工作。需要配置数据库配置参数如下:

打开数据库配置文件my.ini(Windows)或者/etc/my.cnf(Linux)。

修改或者增加如下参数:

在 [mysql]  标签下加上一行

default_character_set = utf8

在 [mysqld] 标签下加上三行

default_character_set = utf8

character_set_server = utf8

collation_server = utf8_general_ci

init_connect = 'SET collation_connection = utf8_general_ci'

init_connect = 'SET NAMES utf8' 

在 [mysql_server]标签下加上一行

default_character_set = utf8

在 [mysqld_safe]标签下加上一行

default_character_set = utf8

在 [client]标签下加上一行

default_character_set = utf8

二、转换插入的中文字符编码。

假设插入中文字符串srcStr,需要转换成如下字符串:

String insertStr = new String(srcStr.getBytes("utf-8"),"iso-8859-1");

这种思路在取出字符串时需要再转换一次编码,所以推荐第一种解决办法。

 

PS:其实转换的时候遇到另外一个问题,就是HttpServletRequest打印出来的编码格式是utf-8,实际转换编码的时候用的是gb2312……有人知道这是为什么吗?

标签:编码,set,错误,记录,default,utf8,character,标签,Mysql
From: https://www.cnblogs.com/kn-zheng/p/17025206.html

相关文章

  • ODBC连接mysql
    配置/etc/odbc.ini执行命令:isqlfreeswitchfreeswitch123456-v第一个报错:[08S01][unixODBC][MySQL][ODBC5.3(w)Driver]Can'tconnecttolocalMySQLserverthrou......
  • 关于新服务器安装Mysql服务后注意事项:1.表名区分大小写 2.日期中不允许出现值为0
    新购入一台Linux服务器,将项目部署至服务器,项目出现问题记录如下:1.项目使用JPA,实例类中表名为大写,JPA查询显示该表不存在,原因是Mysql设置中默认表名区分大小写showvari......
  • MySQL删除有外键关联的表
    MySQL删除有外键关联的表现象:Cannotdeleteorupdateaparentrow:aforeignkeyconstraintfails原因:在删除表时,删除的表与另外一张表存在外键关联解决:方案一......
  • MySQL 删除时 Data truncation Truncated incorrect DOUBLE value
    MySQL删除时Datatruncation:TruncatedincorrectDOUBLEvalue数据库在删除的时候会做数据类型校验,将字段值转换为你传进去的类型,发现不能转换的就会报错......
  • Mysql5.7的初始密码更改
    软件版本的变化真是让人兴奋……Linux服务器决定安装使用mysql5.7了。愉快的去官网下载安装包:https://dev.mysql.com/downloads/mysql/解决完所有依赖安装……执行sys......
  • Linux下rpm安装MySQL及配置
    Linux下rpm安装MySQL及配置xupeng1644已于2022-03-2211:38:47修改2747收藏15分类专栏:Linux文章标签:rpmMySQLLinux版权Linux专栏收录该内容55篇文章1订阅订......
  • mysql 中的auto_increment自增值
    1.初始化自增值默认值是从1开始,在建表时使用“AUTO_INCREMENT=n”可以来指定一个自增的初始值,比如:CREATETABLEtest(idINTUNSIGNEDNOTNULLPRIMARYKEYAUTO_INCR......
  • 使用 DataX 实现 MySQL 数据的高效同步
    使用DataX实现MySQL数据的高效同步发布于2022-07-1816:07:19阅读 5590 本周赠书《性能之巅》第2版我们公司有个项目的数据量高达五千万,但是因为报表那......
  • mysql 授权远程访问
    进入mysql命令1.进入cd/usr/local/mysql/bin下执行./mysql-uroot-pInfosec@2020 (-p后面是数据库密码)2.usemysql;3.updateusersethost='%'whereuser='r......
  • 私有镜像仓库拉取报证书错误:x509: certificate signed by unknown authority
    私有镜像仓库拉取报证书错误:x509:certificatesignedbyunknownauthority1.容器运行时为Dockercat>/etc/docker/daemon.json<<EOF{ "graph":"/var/lib/docker",......