向mysql数据库插入汉字乱码怎么处理

向mysql数据库插入汉字乱码怎么处理,第1张

更改数据库安装时的字符编码。打开mysql安装目录,找到my.ini文件,通过使用记事本的方式打开,将这里面的default-character-set=latin1修改成gbk,注意这里面有两处需要修改。

修改数据库实例中的编码,打开data文件夹,找到对应的数据库实例,修改里面的db.opt文件,将字符编码改成gbk如图所示。

修改数据库实例编码还可以通过navicat for mysql客户端直接进行更改,在数据库实例上右键--属性--选择字符编码。

重启数据库。通过cmd命令对数据库进行重启生效。

更改编码中连接串的字符编码,在连接串后面添加&useUnicode=true&characterEncoding=gbk。

测试数据是否正常。再次重新插入数据库数据,就可以看到汉字不会乱码

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

转:

首先写一个数据库test,然后写一个表table,最后插入你想要写入的字段"工资"。出现了了乱码。就得

1. 启动MySQL,在里面输入 ALTER DATABASE `test` DEFAULT CHARACTER SET utf8 COLLATE utf8_bin,将test数据库的编码设为utf8。

2. 修改表的编码:ALTER TABLE `category` DEFAULT CHARACTER SET utf8 COLLATE utf8_bin 以上命令就是将一个表category的编码改为utf8 。

3. 修改字段的编码:直接在MySQL里右击表,然后点编辑表,在里面修改或输入代码: ALTER TABLE `test` CHANGE `dd` `dd` VARCHAR ( 45 ) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL。4.得删除之前插入的字段之类的,再重新导入之前的字段


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11946635.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存