微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

MySQL 枚举集合

ENUM

   枚举类型从众多选项中提取一个选项,类似于单选的概念,最大可指定65535个选项。

   如果插入值不在其选项中,将会插入。

MysqL> create table user(  # 创建用户表
    ->         name char(12),->         gender enum("male","famale","outher"),# 性别使用枚举类型再合适不过
    ->         age tinyint
    -> );
Query OK,0 rows affected (0.04 sec)

MysqL> insert into user(name,gender,age) values
    ->         ("Yunya","male",18),->         ("Baby",18);
Query OK,2 rows affected (0.00 sec)
Records: 2  Duplicates: 0  Warnings: 0

MysqL> select * from user;
+--------------+--------+------+
| name         | gender | age  |
+--------------+--------+------+
| Yunya        | male   |   18 |
| Baby         | famale |   18 |
+--------------+--------+------+
2 rows in set (0.00 sec)

MysqL>

SET

   集合类型从众多选项中提取出多个选项,类似于多选的概念,最大可指定64个选项。

   如果插入值中有一个不在其选项中,该插入值将为,在其选项中的值将会正确插入。

MysqL> create table user(  # 创建用户表
    ->         name char(12),->         age tinyint,->         hobby set("basketball","football","music","playgame") # 爱好使用集合类型再合适不过
    -> );
Query OK,0 rows affected (0.03 sec)

MysqL> insert into user(name,age,hobby) values
    ->         ("Yunya",18,"basketball,playgame"),"football,music");  # 插入时按照 "选项1,选项2" 的方式进行插入
Query OK,2 rows affected (0.00 sec)
Records: 2  Duplicates: 0  Warnings: 0

MysqL> select * from user;
+--------------+--------+------+---------------------+
| name         | gender | age  | hobby               |
+--------------+--------+------+---------------------+
| Yunya        | male   |   18 | basketball,playgame |
| Baby         | famale |   18 | football,music      |
+--------------+--------+------+---------------------+
2 rows in set (0.00 sec)

MysqL>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐