mysql 插入汉字之问题解决

转载的,我只用了红线以前的部分就ok啦,红线下的供参考。


俺哪宝贝MYSQL5,可不听话,插入汉字也不乖,老报错,俺实在没办法,打了它一顿好了!

mysql> insert into a values('中国');

ERROR 1406 (22001): Data too long for column 'name' at row 1
或者


[img]http://dl.iteye.com/upload/attachment/0072/5875/a9c70ff7-9ad7-3741-9ce5-7f1dbd067c8c.jpg[/img]


网上的贴子写的可有好的,俺看了一个ITPUB上的贴很有启发。

俺给它来个前后里外打!

***********************************************************

:前打

建库的时候用GBK,设定字符编码;

mysql> create database testgbk default charset=gbk;

Query OK, 1 row affected (0.02 sec)

mysql> use testgbk;

Database changed

:后打

建表的时候用GBK,设定字会编码

mysql> create table t_gbk(

-> id char(16) NOT NULL)

-> DEFAULT CHARSET=gbk;

Query OK, 0 rows affected (0.05 sec)
[color=red]

==================================================================[/color]
:)) 听话了吧!

插入中文数据没问题;

mysql> insert into t_gbk values('中国');

Query OK, 1 row affected (0.03 sec)

/

显示本地字符集;

mysql> show variables like '%char%';

+--------------------------+---------------------------+

| Variable_name | Value |

+--------------------------+---------------------------+

| character_set_client | gb2312 |

| character_set_connection | gb2312 |

| character_set_database | latin1 |

| character_set_filesystem | binary |

| character_set_results | gb2312 |

| character_set_server | gbk |

| character_set_system | utf8 |

| character_sets_dir | C:\mysql5\share\charsets\ |

+--------------------------+---------------------------+

8 rows in set (0.00 sec)

///

mysql> show variables like '%char%';

+--------------------------+---------------------------+

| Variable_name | Value |

+--------------------------+---------------------------+

| character_set_client | gb2312 |

| character_set_connection | gb2312 |

| character_set_database | gbk |

| character_set_filesystem | binary |

| character_set_results | gb2312 |

| character_set_server | gbk |

| character_set_system | utf8 |

| character_sets_dir | C:\mysql5\share\charsets\ |

+--------------------------+---------------------------+

8 rows in set (0.00 sec)//

MYSQL5就是不听话!

要是上面的方法还出错你就!
mysql> set names gbk;


改my.ini二处

[client]

port=3306
default-character-set=gbk
********************

# The default character set that will be used when a new schema or table is
# created and no character set is defined
default-character-set=gbk

******************

一般的MYSQL5都听话了 :)

注:

要是在日文系统下开发的话,gbk或gbk2312改成 sjis就可以啦!
)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值