Files\MySQL\MySQL
Server
5.0,找到my.ini这个配置文件,然后把default-character-set的值改成utf8,有两个地方.如果还不行,看下乱码的那个列的编码格式,把字符集改成utf8,把整理改成utf8_general_ci.
更改数据库安装时的字符编码。打开mysql安装目录,找到my.ini文件,通过使用记事本的方式打开,将这里面的default-character-set=latin1修改成gbk,注意这里面有两处需要修改。修改数据库实例中的编码,打开data文件夹,找到对应的数据库实例,修改里面的db.opt文件,将字符编码改成gbk如图所示。
修改数据库实例编码还可以通过navicat for mysql客户端直接进行更改,在数据库实例上右键--属性--选择字符编码。
重启数据库。通过cmd命令对数据库进行重启生效。
更改编码中连接串的字符编码,在连接串后面添加&useUnicode=true&characterEncoding=gbk。
6
测试数据是否正常。再次重新插入数据库数据,就可以看到汉字不会乱码。
mysql数据乱码问题可能有以下三种原因:1.server本身设定问题,例如还停留在latin1版本
2.table的语系设定问题(包含character与collation)
3.客户端程式(例如php,java)的连线语系设定问题
建议使用utf8!!!!
想要避免mysql的中文乱码问题,可以尝试以下方法:
1,对于版本问题,建议去官网更新最新的版本或者比较好用的版本;
2,创建数据库,创建表时没有对字符编码进行设定会造成乱码问题:
创建数据库的时候:CREATE DATABASE `test`
CHARACTER SET 'utf8'
COLLATE 'utf8_general_ci'
建表的时候 CREATE TABLE `database_user` (
`ID` varchar(40) NOT NULL default '',
`UserID` varchar(40) NOT NULL default '',
) ENGINE=InnoDB DEFAULT CHARSET=utf8
3,对于第三种情况,参考一下方法:
编辑linux服务器中/etc/my.cnf文件,在[mysql]段加入default_character_set=utf8
如果只是调试遇到乱码问题:
在编写Connection URL时,加上?useUnicode=true&characterEncoding=utf-8参数
并且在网页代码中加上一个"set names utf8"或者"set names gbk"的指令,告诉MySQL连线内容都要使用utf-8或者gbk。
utf8或者gbk
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)