8.3.5 - mysql 枚举

枚举类型与集合类型

字段的值只能在给定范围中选择,如单选框,多选框

enum 单选 只能在给定的范围内选一个值,如性别 sex 男male/女female

set 多选 在给定的范围内可以选择一个或一个以上的值(爱好1,爱好2,爱好3...)

create table consumer(
 id int,
 name char(16), 
 sex enum('male','female'),
 level enum ('vip1','vip2','vip3'),
 hobbies set('play','music','run')
);

insert into consumer values
(1,'cmz','male','vip1','music,run');

# 因为不在选择范围内会报错
insert into consumer values
(2,'cmz','xxx','vip1','music,run'); 
# 操作过程
mysql> create table consumer(
    ->  id int,
    ->  name char(16), 
    ->  sex enum('male','female'),
    ->  level enum ('vip1','vip2','vip3'),
    ->  hobbies set('play','music','run')
    -> );
Query OK, 0 rows affected (0.03 sec)

mysql> insert into consumer values
    -> (1,'cmz','male','vip1','music,run');
Query OK, 1 row affected (0.04 sec)
mysql> select * from consumer;
+------+------+------+-------+-----------+
| id   | name | sex  | level | hobbies   |
+------+------+------+-------+-----------+
|    1 | cmz  | male | vip1  | music,run |
+------+------+------+-------+-----------+
1 row in set (0.00 sec)

mysql> insert into consumer values
    -> (1,'cmz','xxx','vip1','music,run');
ERROR 1265 (01000): Data truncated for column 'sex' at row 1

 

转载于:https://www.cnblogs.com/caimengzhi/p/8552508.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值