mysql 建表 设置字符集,怎样设置在mysql5.0建表时字段的默认字符集

在别的论坛收集到一些资料,我试了经过这三步就可以存中文了。

mySql版本4.1.14

步骤:

1、  my.ini文件里设置default-character-set=gb2312

登录mysql的时候字符集要选gb2312

mysql -h localhost -uroot -p --default-character-set=gb2312

2、每建一个库都要设定字符集!

CREATE DATABASE test2 DEFAULT CHARACTER SET gb2312 ;

可以用status查看Db,Client,Conn.的编码状态是否是gb2312

3、建表时也最好设定字符集,确保万无一失!

建表也要加上:

DEFAULT CHARACTER SET gb2312;

问题:        如果我不修改用原来的默认latin1格式会出问号,

如果我改成utf-8则中文显示不出来,插入为空。

CREATE TABLE `books` (

`id` varchar(8) NOT NULL default '',

`name` varchar(24) default NULL,

`title` varchar(96) default NULL,

`price` float default NULL,

`yr` int(11) default NULL,

`description` varchar(30) default NULL,

`saleAmount` int(11) default NULL,

PRIMARY KEY  (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8;

这个表的类型为varchar的字段的字串集都是utf8,数据库的字符集也为utf8;

用mysql> alter table books convert to character set gbk;作转换后变成:

CREATE TABLE `books` (

`id` varchar(8) character set gbk NOT NULL default '',

`name` varchar(24) character set gbk default NULL,

`title` varchar(96) character set gbk default NULL,

`price` float default NULL,

`yr` int(11) default NULL,

`description` varchar(30) character set gbk default NULL,

`saleAmount` int(11) default NULL,

PRIMARY KEY  (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8;

明显可以看到字段类型为varchar的字符集都变成了gbk,但是数据库的字符集仍为utf8;

如果想连数据库的字符集也变成gbk,就要用

mysql> alter database bookdb default character set gbk;

环境:vc6.0,mysql5.1,mysql ODBC5.1 现象: mysql5.1在liunx服务器上,汉字显示正常。 取出数据后,页面显示数据库取出的值表示为:?? 上网找了些相关资料: 建一个 ODBC 数据源,指向你的数据库,并在该数据源配置项 Initial Statement 中填入 SET CHARACTER SET GBK

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值