现象:用JDBC将中文字段插入MySQL数据库中,然后打开表发现,那些字段都是"??",或者是乱码.
原因:
1.创建数据库时没有指定默认的编码方式,导致数据库使用了MySql的默认字符集latin1。
2.Client端字符集为latin1.
3.进行jdbc链接时使用了不匹配的字符集。
解决办法:
1.创建数据库时将数据库的缺省字符集指定为utf8。sql语句没查到…
2. 修改Client默认字符集为utft。windows下在mysql安装目录下找到my.ini,将里面的default-character-set=latin1 改为default-character-set=UTF8,然后重起mysql服务即可将数据库默认字符集改为utf8.此时应该在mysql命令行用\s命令检查一下看是否改好了。
3.修改jdbc的链接,将原来的
jdbc:mysql://localhost:3306/YourDb
改为
jdbc:mysql://localhost:3306/YourDb?useUnicode=true&characterEncoding=UTF-8
做完以上工作后,插入到mysql的中文应该不会再是乱码了.
分享到:
相关推荐
java插入mysql中文乱码解决
解决大部分数据插入数据库出现乱码的情况,包括oracle数据库,MYsql等
主要为大家详细介绍了java向mysql插入数据乱码问题的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
用C#操作mysql时, 插入数据中文都是乱码,只显示问号,数据库本身使用的是utf-8字符
数据存入数据库前,汉字正确 MySQL存数据时乱码解决
主要介绍了JSP MySQL插入数据时出现中文乱码问题的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
JSP MySQL 插入数据时出现中文乱码问题的解决方法 在 JSP 应用程序中,使用 MySQL 数据库时,插入中文数据可能会出现乱码问题。这种问题的产生是因为客户端和服务器端的字符集编码不一致所导致的。解决这个问题需要...
使用 docker 启动 mysql 容器可能会出现中文乱码的情况,这里记录如何制作支持中文的 mysql 镜像 docker版本:18.06 mysql 版本:5.7 1. 创建 my.cnf 文件 [client] default-character-set=utf8 [mysql] default-...
在使用mysql的过程中,有个问题就是mysql的优化,mysql中longblob字段在5.5版本中默认的为1M。 想改变这个问题,需要注意几点: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (2054817 > ...
大家在使用PHPmyadmin把mysql数据库导出导入的时候都遇到过中文乱码的问题,尤其是网站迁移的过程中,只有把这个中文乱码的问题解决好了,你才能把mysql数据库玩熟玩好。
本文给大家介绍的是如何解决win平台下开发的项目移植到Linux平台后,向MySQL插入数据时中文出现乱码的问题,非常的简单实用,有需要的小伙伴可以参考下
Kettle推送数据到Mysql数据库表时乱码
mysql是我们项目中非经常常使用的数据型数据库,下面这篇文章主要给大家介绍了关于mysql中插入表数据中文乱码问题的解决方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习...
MySQL中文乱码解决办法 前言: MySQL是我们项目中非常常用的数据型数据库。但是因为我们需要在数据库保存中文字符,所以经常遇到数据库乱码情况。下面就来介绍一下如何彻底解决数据库中文乱码情况。 1、中文乱码 1.1...
本文介绍了在mysql安装时选择了utf8编码方式,创建数据库时也选择了utf8,但是通过程序向数据库中插入数据时,仍存在乱码问题的解决方法
在开发web程序或是学习mysql的时候,我们经常会遇到中文乱码或是中文插入失败的情况,该文章为大家讲解了原因,也提供了解决方法
使用java的SSH+Mysql时出现插入数据乱码还有查询也出现乱码问题