MySQL写入中文乱码之处理 character_set_server编码
Java连接MySQL时,写入到数据库的中文,经常会编程乱码。我碰到了很多次,为了让自己彻底记住,于是,写下这个小计!
MySQL数据库出现中文乱码的原因,往往是以下以下客户端、服务器、结果集、数据库的字符集不统一造成的,可以通过:show variables like "%char%"; 语句查询自己数据库当前字符集的配置,显式结果如下:
character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8
对于数据库字符集,可以通过这个命令更改:ALTER DATABASE `db_name` CHARACTER SET utf8;其他的也可以通过这条语句修改:set character_set_client='utf8';
但是,character_set_server如果默认为latin1,要永久更改,用set命令是行不通的,而更改my.ini文件,也没有效果。
正解是:在MySQL的安装文件中进入bin目录下,双击MySQLInstanceConfig.exe,重新走一遍server的配置,但需要注意的是,在Character Set环节,要选择第三项,character选择utf8,(第一项是默认server字符集为latin1)。完成配置后,重启MySQL,写入的数据到MySQL中就是中文啦。为了解决中文乱码,你是不是还在不停的卸载重装MySQL呢?试试这个方法吧!
分享到:
相关推荐
MySQL写入中文乱码之处理character
MySQL写入中文乱码之处理character
mysql链接建立之后,通过如下方式设置编码: 复制代码 代码如下: mysql_query(“SET character_set_connection=” . $GLOBALS[‘charset’] . “,character_set_results=” . $GLOBALS[‘charset’] . “,character_...
打印sql语句还是中文 到数据库发现乱码,本以为是hibernate搞的,结果证明不是hibernate 自己也是网上解决办法 自己的问题解决了 希望能帮助其他人 运行命令:SHOW VARIABLES LIKE 'character_set_%'; 结果如下 '...
FIND_IN_SET(str,strlist) 定义 假如字符串str在由多个子链组成的字符串列表strlist中,则返回值的范围在1到N之间。 一个字符串列表就是一个由一些被‘,’符号分开的自链组成的字符串。 如果第一个参数是一个...
7_MYSQL视频教程 字符集操作原理与乱码解决方案character_set_client_character_set_connection_character_set_results
博客:PostgreSQL的学习心得和知识总结(六十五)|关于PostgreSQL数据库 实现MySQL数据库find_in_set()函数 的实现方案
通过show variables like ‘character_set%%’;查看编码 修改mysql的编码方式可以有以下几个: 1.通过配置文件修改my.ini(windows下)或/etc/my.cnf(linux下) 分别添加如下内容 [mysqld] character_server_set=utf8 ...
使用 docker 启动 mysql 容器可能会出现中文乱码的情况,这里记录如何制作支持中文的 mysql 镜像 docker版本:18.06 mysql 版本:5.7 1. 创建 my.cnf 文件 [client] default-character-set=utf8 [mysql] default-...
前言 字符集是一套符号和编码的规则,不论是在oracle数据库还是在mysql数据库,都存在字符集的...mysql> show variables like 'character_set%'; +--------------------------+----------------------------------+ |
代码如下:character-set-server = utf8 之后, 代码如下:character_set_client、 character_set_connection、character_set_results 就始终都是和服务器端保持一致了,即便在mysql客户端加上选项 代码如下:–...
(3)启动mysqld 时,可以在命令行参数中指定一个默认的的字符集,如果没指定,这个值继承自配置文件中的配置,此时 character_set_server 被设定为这个默认的字符集; 字串7 (4)当创建一个新的数据库时,除非明确...
本文实例讲述了Python中MYSQLdb出现乱码的解决方法,分享给大家供大家参考。具体方法如下: 一般来说,在使用mysql最麻烦的问题在于乱码。 查看mysql的编码: 命令: 复制代码 代码...character_set_server数据库服
NULL 博文链接:https://macrotea.iteye.com/blog/1683977
Oracle_Mysql_Sqlserver字段类型转换参考Oracle_Mysql_Sqlserver字段类型转换参考Oracle_Mysql_Sqlserver字段类型转换参考Oracle_Mysql_Sqlserver字段类型转换参考Oracle_Mysql_Sqlserver字段类型转换参考Oracle_...
解决字符集通讯设置不匹配的方法: (修改默认的character_set_client,character_set_connection,character_set_result)
很多时候我们在设计数据库... 先看mysql手册中find_in_set函数的语法: FIND_IN_SET(str,strlist) 假如字符串str 在由N 子链组成的字符串列表strlist 中,则返回值的范围在 1 到 N 之间。一个字符串列表就是一个由一些被
Java写入MySQL中文乱码解决方法.docx
Python连接MySQL,写入MySQL,可以运行成功