Mysql 1366 中文显示错误修改方法
2012-11-05 15:36
288 查看
mysql中文显示问题[ERROR 1366 (HY000):错误
mysql[ERROR 1366 (HY000):错误]中文显示问题
mysql的字符集用utf8也解决不了中文的编码问题,用gbk才能解决。所以总结一下如果更改编码:
停掉mysql服务,修改my.ini文件,修改两处default-character-set=gbk。启动mysql服务。再次插入,还是有问题。
用status看了一下:
mysql> status;
原来
Connection id: 25
Current database: order_movie_ticket
Current user: root@localhost
SSL: Not in use
Using delimiter: ;
Server version: 5.1.45-community MySQL Community Server (GPL)
Protocol version: 10
Connection: localhost via TCP/IP
Server characterset: utf8
Db characterset: utf8
Client characterset: gbk
Conn. characterset: gbk
TCP port: 3306
Uptime: 6 min 31 sec
虽然Client characterset和Conn. characterset都改成了gbk, Db characterset的字符集还是utf8,所以仍出现中文乱码。
所以要把它设回gbk,用alter命令。
mysql> alter database order_movie_ticket character set gbk;
因为只改了order_movie_ticket这一个db,所以直接用status查结果还是Db characterset的字符集为utf8,但是若转入order_movie_ticket,只看他自己的
mysql> use order_movie_ticket;
再用status看一下,这回对了。再次插入数据,这回正确了。
要注意的是以上改的前提是database order_movie_ticket里是空的,如果它的一些表里已经有数据就不能只改db了,还要用alter命令改相应的table,
如:mysql> alter table movie character set gbk;
可以通过如下命令
mysql> show create table movie; 来看表的create命令形式的结构和表的字符集。
----------------------------------------------------------
movie | create table 'movie' (
'movie_id' bigint(20) not null auto_increment,
'name' varchar(50) not null,
'actor' varchar(100) not null,
'director' varchar(30) not null,
'classification' varchar(30) default null,
'story' varchar(200) default null,
'valid' char(1) not null default 'Y',
primary key ('movie_id')
) ENGINE=InnoDB DEFAULT CHARSET=gbk
------------------------------------------------------------
这样改应该就可以了。
mysql[ERROR 1366 (HY000):错误]中文显示问题
mysql的字符集用utf8也解决不了中文的编码问题,用gbk才能解决。所以总结一下如果更改编码:
停掉mysql服务,修改my.ini文件,修改两处default-character-set=gbk。启动mysql服务。再次插入,还是有问题。
用status看了一下:
mysql> status;
原来
Connection id: 25
Current database: order_movie_ticket
Current user: root@localhost
SSL: Not in use
Using delimiter: ;
Server version: 5.1.45-community MySQL Community Server (GPL)
Protocol version: 10
Connection: localhost via TCP/IP
Server characterset: utf8
Db characterset: utf8
Client characterset: gbk
Conn. characterset: gbk
TCP port: 3306
Uptime: 6 min 31 sec
虽然Client characterset和Conn. characterset都改成了gbk, Db characterset的字符集还是utf8,所以仍出现中文乱码。
所以要把它设回gbk,用alter命令。
mysql> alter database order_movie_ticket character set gbk;
因为只改了order_movie_ticket这一个db,所以直接用status查结果还是Db characterset的字符集为utf8,但是若转入order_movie_ticket,只看他自己的
mysql> use order_movie_ticket;
再用status看一下,这回对了。再次插入数据,这回正确了。
要注意的是以上改的前提是database order_movie_ticket里是空的,如果它的一些表里已经有数据就不能只改db了,还要用alter命令改相应的table,
如:mysql> alter table movie character set gbk;
可以通过如下命令
mysql> show create table movie; 来看表的create命令形式的结构和表的字符集。
----------------------------------------------------------
movie | create table 'movie' (
'movie_id' bigint(20) not null auto_increment,
'name' varchar(50) not null,
'actor' varchar(100) not null,
'director' varchar(30) not null,
'classification' varchar(30) default null,
'story' varchar(200) default null,
'valid' char(1) not null default 'Y',
primary key ('movie_id')
) ENGINE=InnoDB DEFAULT CHARSET=gbk
------------------------------------------------------------
这样改应该就可以了。
相关文章推荐
- Mysql 1366 中文显示错误修改方法
- Mysql 1366 中文显示错误修改方法
- Mysql 1366 中文显示错误修改方法
- mysql导入导出数据中文乱码解决方法小结(1、navicat导入问题已解决,创建连接后修改连接属性,选择高级->将使用Mysql字符集复选框去掉,下拉框选择GBK->导入sql文件OK;2、phpmyadmin显示乱码的问题也解决,两步:1.将sql文件以utf8的字符集编码另存,2.将文件中sql语句中的字段字符集编码改成utf8,导入OK)
- mysql 1366错误,保存中文乱码的解决方法
- 虚拟机中的linux系统修改时间重启后仍然显示错误时间的解决方法
- xadmin下修改左道航的显示不是中文字修改方法
- PHP连接MySQL查询结果中文显示乱码解决方法
- mysql登录出现1045错误修改方法
- mysql 插入中文和显示中文的方法
- c#写入Mysql中文显示乱码 解决方法 z
- mysql中文乱码问题1366错误
- mysql修改字符集解决中文乱码的方法
- 有关mysql中文编码错误的一些处理方法
- mysql字符集修改方法&中文乱码问题
- MySql系列:中文写入数据库出现错误java.sql.SQLException: Incorrect string value: '\xE5\xxxx' for column 'xxxx' at row 1及其解决方法
- xshell显示中文为乱码的修改方法
- ubuntu14.04下MYSQL显示中文乱码问题解决方法
- mysql插入表中的中文字符显示为乱码或问号的解决方法
- Ubuntu MySQL 输入中文时报错 ERROR 1366(HY000):Incorrect string value 解决方法