mysql 创建表 指定字符集

来源:互联网 发布:淘宝评价多久更新一次 编辑:程序博客网 时间:2024/05/19 06:17
不知道你是不是想像下面那样作转换: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;<span style="font-size:14px;color:#FF0000;"><strong></strong></span>

把现在的表导出来,然后把所有的 DEFAULT CHARSET=utf8之类的语句改成DEFAULT CHARSET=gbk,再运行,就行了



mysql 创建表:

mysql> create table user(
    -> userid int(4) primary key not null auto_increment,
    -> username varchar(16) not null,
    -> userpassword varchar(32) not null
    -> );

 

create table log(
logid int(4) primary key not null auto_increment,
logtitle varchar(32) not null,
logcontent varchar(160) not null,
logtime datetime not null,
userip varchar(64) not null
);


0 0
原创粉丝点击