重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
1,创建table的时候就使用utf8编码
创新互联10多年成都定制网站服务;为您提供网站建设,网站制作,网页设计及高端网站定制服务,成都定制网站及推广,对成都边坡防护网等多个领域拥有多年的营销推广经验的网站建设公司。
举个例子:
在每次创建表的时候都在最后加上 character set = utf8 就可以很好的支持中文。
2,修改已经有的table的编码
当使用默认编码创建了一个table的时候,是不能支持中文的,这时候使用如下语句对table_name进行修改:
此后再往这个table插入中文的时候,就可以正常存储和读取了,但不知道为什么之前的乱码还是不能纠正,只能新插入的数据没有问题。
[注意] 我google了一下,有些地方说这个命令也行,但是我测试以后并不行
alter table table_name charset=utf8; #这个语句并没有让table_name支持中文
CREATE TABLE t_department ( sid varchar(32) NOT NULL, pid varchar(32) NOT NULL, thedata varchar(50) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=gbk; 2)打开你的MySQL目录下的my.ini文件,把里面所有的default-character-set选项设为GBK或者GB2312,保存后重启MySQL。[Zone Yan.] 测试过----ok3)mysql数据库安装的时候。选择语言为gbk的那个,这样在数据库中才可以存放中文。
Mysql数据库不能插入中文,一插入就报错,是代码输入错误造成的,解决方法如下:
1、首先使用insert语句,把数据插入到数据库表里。
2、运行后,发现插入语句报错了。点击语句,查看详情,提示说插入的中文语句是不正确的字符串内容。
3、这时右键点击插入数据的表,然后点击表设计。
4、打开表设计界面后,点击上方的Option选项。
5、默认新建的表字符集用的是latin1字符集。要插入中文内容,需要将其改成ubf8字符集。
6、除此之外,需要保存中文内容的字段,也需要将其改成utf8字符集。
7、修改好,保存后,再次运行插入sql语句,可以看到成功插入中文数据了。