MySQL字段中的枚举

 2022-10-27    333  

MySQL字段相信大家都有一些了解,下面将为您介绍的是MySQL字段中的枚举,希望对您学习MySQL字段方面能够有所帮助。

MySQL字段中的枚举:

MySQL字段中的枚举

mysql> create table meiju(f1 enum(‘1′,’2′,’3′,’4′,’5′,’6’)); Query OK, 0 rows affected (0.92 sec)

mysql> desc meiju; +——-+——————————-+——+—–+———+——-+ | Field | Type | Null | Key | Default | Extra | +——-+——————————-+——+—–+———+——-+ | f1 | enum(‘1′,’2′,’3′,’4′,’5′,’6’) | YES | | NULL | | +——-+——————————-+——+—–+———+——-+

mysql> insert into meiju values(2);

mysql> insert into meiju values("2");

mysql> insert into meiju values("6");

序号为 1 2 3 4 5

内容没有序号也没有就不能插入

mysql> insert into meiju values(8); ERROR 1265 (01000): Data truncated for column ‘f1’ at row 1 mysql> insert into meiju values("8"); ERROR 1265 (01000): Data truncated for column ‘f1’ at row 1

mysql> select * from meiju; +——+ | f1 | +——+ | 1 | | 2 | | 2 | | 6 | +——+

改表

mysql> alter table meiju modify f1 enum("a","b","c","d","e","f"); Query OK, 4 rows affected (0.39 sec) Records: 4 Duplicates: 0 Warnings: 0

可以自动将记录当序号匹配成新的字段值(挺神奇)

mysql> select * from meiju; +——+ | f1 | +——+ | a | | b | | b | | f | +——+

一个记录只能有一个枚举值 不像set 可以累加

mysql> insert into meiju values(7); ERROR 1265 (01000): Data truncated for column ‘f1’ at row 1

注意***输入的是值得时候值要加引号 否则当作序号来处理

当带引号的数字不符合枚举要求时会试一试当作序号合适不合适

如 insert into meiju values("7");

7不在枚举值内 就插入第7个值 如果没有7个值则报错

集合 和 枚举的区别

1 集合可以有64个值 枚举有65535个

2 集合的序号是 1 2 4 8 16 枚举是 1 2 3 4 5 6

3 集合一个字段值可以有好几个值

+——-+ | f1 | +——-+ | f,m | +——-+

而枚举只能有一个

  •  标签:  
  • MySQL
  •  

原文链接:https://77isp.com/post/4574.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。