Enum?p>
嘈?/h3>
create database EnumTypeStudy; use EnumTypeStudy; #创建一个表 enum 单选项 只能选择一个 enum 最多有65535个组合 create table EnumTypes(etype enum('男','女','保密')); insert into Enumtypes values('男'); select *from enumtypes; # 如果插入的是数字? insert into Enumtypes values(1); insert into Enumtypes values(2); insert into Enumtypes values(3); #男 女 保密 对应着 数值 1 2 3 显示我显示的是男 女 保密 就像 c++ 键值对一样 select *from enumtypes; # 若是想看看到底是不是存的是数字 select etype + 0 from EnumTypes; #当 enum 加入非空 默认取第一个值为准 # 没有加入非空 create table EnumTypes1(etype enum('男','女','保密'), name varchar(32)); insert into EnumTypes1(name) values("张三"); select *from EnumTypes1; /* select *from EnumTypes1; +-------+------+ | etype | name | +-------+------+ | NULL | 张三 | +-------+------+ 1 row in set (0.00 sec) */ # 若指定not null,加上只插入姓名 那么默认取第一个值 为不为空的值 create table EnumTypes2(etype enum('男','女','保密')not null, name varchar(32)); insert into EnumTypes2(name) values("张三"); select *from EnumTypes2; /* +-------+------+ | etype | name | +-------+------+ | 男 | 张三 | +-------+------+ 1 row in set (0.00 sec) */ insert into EnumTypes2 values('女',"李四"); select *from EnumTypes2; /* +-------+------+ | etype | name | +-------+------+ | 男 | 张三 | | 女 | 李四 | +-------+------+ */
set类型
#列的类型set类型 create database setTypeStudy; use setTypeStudy; #创建一个表 set 多选项 只能选择 多个 只要值在范围 最多有64个组合 set( 值1,.....值64) create table setTypes(stypes set('唱','跳','rap','篮球')); insert into settypes values("唱,跳"); select* from settypes; insert into settypes values("rap,跳"); select* from settypes; insert into settypes values("篮球,rap"); select* from settypes; select stypes+0 from settypes; select bin(stypes+1) from settypes; insert into settypes values("唱,跳,rap"); select bin(stypes+1) from settypes; insert into settypes values("唱,跳,rap,篮球"); select bin(stypes+1) from settypes;
mysql> insert into settypes values("唱,跳"); Query OK, 1 row affected (0.01 sec) mysql> select* from settypes; +--------+ | stypes | +--------+ | 唱,跳 | +--------+ 1 row in set (0.00 sec) mysql> insert into settypes values("rap,跳"); Query OK, 1 row affected (0.01 sec) mysql> select* from settypes; +--------+ | stypes | +--------+ | 唱,跳 | | 跳,rap | +--------+ 2 rows in set (0.00 sec) mysql> mysql> select stypes+0 from settypes; +----------+ | stypes+0 | +----------+ | 3 | | 6 | | 12 | +----------+ 3 rows in set (0.00 sec) mysql> select bin(stypes+1) from settypes; +---------------+ | bin(stypes+1) | +---------------+ | 100 | | 111 | | 1101 | +---------------+ 3 rows in set (0.00 sec) mysql> select bin(stypes+1) from settypes; +---------------+ | bin(stypes+1) | +---------------+ | 100 | | 111 | | 1101 | | 1000 | +---------------+ 4 rows in set (0.00 sec) mysql> select stypes+0 from settypes; +----------+ | stypes+0 | +----------+ | 3 | | 6 | | 12 | | 7 | +----------+ 4 rows in set (0.00 sec) mysql> insert into settypes values("唱,跳,rap,篮球"); Query OK, 1 row affected (0.01 sec) mysql> select bin(stypes+1) from settypes; +---------------+ | bin(stypes+1) | +---------------+ | 100 | | 111 | | 1101 | | 1000 | | 10000 | +---------------+ 5 rows in set (0.00 sec) mysql> select stypes+0 from settypes; +----------+ | stypes+0 | +----------+ | 3 | | 6 | | 12 | | 7 | | 15 | +----------+ 5 rows in set (0.00 sec) mysql> delete from settypes; Query OK, 5 rows affected (0.01 sec) mysql> insert into settypes values("唱,跳"); Query OK, 1 row affected (0.01 sec) mysql> select* from settypes; +--------+ | stypes | +--------+ | 唱,跳 | +--------+ 1 row in set (0.00 sec) mysql> insert into settypes values("rap,跳"); Query OK, 1 row affected (0.01 sec) mysql> select* from settypes; +--------+ | stypes | +--------+ | 唱,跳 | | 跳,rap | +--------+ 2 rows in set (0.00 sec) mysql> mysql> insert into settypes values("篮球,rap"); Query OK, 1 row affected (0.01 sec) mysql> select* from settypes; +----------+ | stypes | +----------+ | 唱,跳 | | 跳,rap | | rap,篮球 | +----------+ 3 rows in set (0.00 sec) mysql> mysql> select stypes+0 from settypes; +----------+ | stypes+0 | +----------+ | 3 | | 6 | | 12 | +----------+ 3 rows in set (0.00 sec) mysql> select bin(stypes+1) from settypes; +---------------+ | bin(stypes+1) | +---------------+ | 100 | | 111 | | 1101 | +---------------+ 3 rows in set (0.00 sec) mysql> insert into settypes values("唱,跳,rap"); Query OK, 1 row affected (0.01 sec) mysql> select bin(stypes+1) from settypes; +---------------+ | bin(stypes+1) | +---------------+ | 100 | | 111 | | 1101 | | 1000 | +---------------+ 4 rows in set (0.00 sec) mysql> insert into settypes values("唱,跳,rap,篮球"); Query OK, 1 row affected (0.01 sec) mysql> select bin(stypes+1) from settypes; +---------------+ | bin(stypes+1) | +---------------+ | 100 | | 111 | | 1101 | | 1000 | | 10000 | +---------------+ 5 rows in set (0.00 sec)