这篇文章将为大家详细讲解有关MySQL数据库插入中文数据出现乱码的解决方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:做网站、网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的米脂网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
1、数据库插入中文乱码首先需要排除的问题是,MySQL的默认字符集和对应database的字符集是什么
通常为了以后的兼容性,建议将整个MySQL的默认字符集都设置成utf-8。可以使用以下命令查看默认字符集:
mysql> SHOW VARIABLES LIKE 'character%';
建议对于新装的MySQL直接将整个所有的默认字符集都设置成utf-8,对于已经有很多database的可以单独设置特定的数据库的字符集。
有关字符集的一些设置方法:
修改特定数据库的字符集
mysql>use mydb mysql>alter database mydb character set utf-8;
创建数据库指定数据库的字符集
mysql>create database mydb character set utf-8;
2、指定JDBC在传输的时候使用utf-8编码
这样整个程序处理、传输、数据库存储都统一了编码格式,因此中文就不会乱码了。所以Java程序JDBC对应的数据库URL应该写成如下样式:
// 驱动程序名 private static String driver = "com.mysql.jdbc.Driver"; // URL指向要访问的数据库名 private static String url = "jdbc:mysql://localhost:3306/watermarking?useUnicode=true&characterEncoding=utf-8"; // MySQL配置时的用户名 private static String user = "root"; // MySQL配置时的密码 private static String password = "root";
URL中“?”后面的就是指定使用UTF-8进行字符编码
关于mysql数据库插入中文数据出现乱码的解决方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。