数据库使用中出现的错误(enum、set)
在使用数据库enum和set出现的问题,即当我们写汉字时,会提示错误,插入数据库失败,看例子吧
create table if not exists user_info(
id int auto_increment primary key,
money float not null,
username varchar(20) not null ,
key(username),
age char(8),
shijian datetime,
shijian2 date,
other text,
sex enum('男','女'),
hobbit set('唱歌','跳舞','足球','篮球','乒乓球','破气球')
);
以上这样写sql语句没有问题,但是我们执行的时候会有报错提醒:
ERROR 1291 (HY000): Column ‘sex’ has duplicated value ‘?’ in ENUM
问题出在编码方式上,,
也就是要求我们在创建数据库时给其设置编码方式
create database db charset utf8;
比如我创建数据库时没有设置编码方法:
create database db1 ;
create database db charset utf8;
主要查看排序规则这的区别!!!!!!!
此时你再执行上面的sql语句,就可以成功了!!!!!!!!!!!!!!!!!!