连接mysql数据库,更新插入数据都乱码

时间:2022-09-21 17:24:26
用spring jpa连接数据库,查询出来的不是乱码,可是插入或者更新到数据库里面的是乱码
数据库编码:utf-8
程序编码:utf-8 
连接的时候也指定 了编码utf-8
程序比较老,不知道是不是jar包版本引起。
有没有人遇到过,请高手指点,搞了一天了也没有搞定

9 个解决方案

#1


提交到后台的时候是不是乱码? 用request.setCharactEncoding...
用get 还是 post 提交。如果是get ,设置服务器的编码。

#2


引用 1 楼 xhmlwaf 的回复:
提交到后台的时候是不是乱码? 用request.setCharactEncoding...
用get 还是 post 提交。如果是get ,设置服务器的编码。

忘了说了,提交到后台的不是乱码,到了执行sql那里都不是乱码,可以一执行sql到库里面的就是乱码
我用客户端执行有中文的sql也不会产生乱码,服了,为什么程序总是乱码啊呢

#3


引用 2 楼 javaDeveloper2010 的回复:
Quote: 引用 1 楼 xhmlwaf 的回复:

提交到后台的时候是不是乱码? 用request.setCharactEncoding...
用get 还是 post 提交。如果是get ,设置服务器的编码。

忘了说了,提交到后台的不是乱码,到了执行sql那里都不是乱码,可以一执行sql到库里面的就是乱码
我用客户端执行有中文的sql也不会产生乱码,服了,为什么程序总是乱码啊呢


我以前也有过这个问题,是我的链接写错了,mysql的链接很容易搞错,如果配置文件是xml的话更容易出错,好好检查下把。

#4


引用 3 楼 xhmlwaf 的回复:
Quote: 引用 2 楼 javaDeveloper2010 的回复:

Quote: 引用 1 楼 xhmlwaf 的回复:

提交到后台的时候是不是乱码? 用request.setCharactEncoding...
用get 还是 post 提交。如果是get ,设置服务器的编码。

忘了说了,提交到后台的不是乱码,到了执行sql那里都不是乱码,可以一执行sql到库里面的就是乱码
我用客户端执行有中文的sql也不会产生乱码,服了,为什么程序总是乱码啊呢


我以前也有过这个问题,是我的链接写错了,mysql的链接很容易搞错,如果配置文件是xml的话更容易出错,好好检查下把。
链接写错了?链接错了还能连上?url=jdbc:mysql://localhost:3306/aa?useUnicode=true&characterEncoding=utf-8

#5


有时候,数据库的编码没错,但是数据表的编码有问题,特别是后期维护新加的数据表,我就碰到一次这个问题,数据表编码引起的,楼主自己看一下吧

#6


该回复于2015-12-08 08:33:29被管理员删除

#7


该回复于2015-12-08 08:33:29被管理员删除

#8


数据库的编码表的编码都没有错呀,都是utf-8,编码是这样的,大家看看有没有错
连接mysql数据库,更新插入数据都乱码
character_set_server的编码我是怎么也改不过来呀

#9


哎,困扰了我一天的问题终于解决了,问题就是设置好character_set_server 设置成utf8就可以了

#1


提交到后台的时候是不是乱码? 用request.setCharactEncoding...
用get 还是 post 提交。如果是get ,设置服务器的编码。

#2


引用 1 楼 xhmlwaf 的回复:
提交到后台的时候是不是乱码? 用request.setCharactEncoding...
用get 还是 post 提交。如果是get ,设置服务器的编码。

忘了说了,提交到后台的不是乱码,到了执行sql那里都不是乱码,可以一执行sql到库里面的就是乱码
我用客户端执行有中文的sql也不会产生乱码,服了,为什么程序总是乱码啊呢

#3


引用 2 楼 javaDeveloper2010 的回复:
Quote: 引用 1 楼 xhmlwaf 的回复:

提交到后台的时候是不是乱码? 用request.setCharactEncoding...
用get 还是 post 提交。如果是get ,设置服务器的编码。

忘了说了,提交到后台的不是乱码,到了执行sql那里都不是乱码,可以一执行sql到库里面的就是乱码
我用客户端执行有中文的sql也不会产生乱码,服了,为什么程序总是乱码啊呢


我以前也有过这个问题,是我的链接写错了,mysql的链接很容易搞错,如果配置文件是xml的话更容易出错,好好检查下把。

#4


引用 3 楼 xhmlwaf 的回复:
Quote: 引用 2 楼 javaDeveloper2010 的回复:

Quote: 引用 1 楼 xhmlwaf 的回复:

提交到后台的时候是不是乱码? 用request.setCharactEncoding...
用get 还是 post 提交。如果是get ,设置服务器的编码。

忘了说了,提交到后台的不是乱码,到了执行sql那里都不是乱码,可以一执行sql到库里面的就是乱码
我用客户端执行有中文的sql也不会产生乱码,服了,为什么程序总是乱码啊呢


我以前也有过这个问题,是我的链接写错了,mysql的链接很容易搞错,如果配置文件是xml的话更容易出错,好好检查下把。
链接写错了?链接错了还能连上?url=jdbc:mysql://localhost:3306/aa?useUnicode=true&characterEncoding=utf-8

#5


有时候,数据库的编码没错,但是数据表的编码有问题,特别是后期维护新加的数据表,我就碰到一次这个问题,数据表编码引起的,楼主自己看一下吧

#6


该回复于2015-12-08 08:33:29被管理员删除

#7


该回复于2015-12-08 08:33:29被管理员删除

#8


数据库的编码表的编码都没有错呀,都是utf-8,编码是这样的,大家看看有没有错
连接mysql数据库,更新插入数据都乱码
character_set_server的编码我是怎么也改不过来呀

#9


哎,困扰了我一天的问题终于解决了,问题就是设置好character_set_server 设置成utf8就可以了