加入收藏 | 设为首页 | 会员中心 | 我要投稿 92站长网 (https://www.92zz.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

如何在mysql中使用枚举类型

发布时间:2022-03-12 12:23:48 所属栏目:MySql教程 来源:互联网
导读:小编给大家分享一下如何在mysql中使用枚举类型,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 枚举类型在mysql的使用方法:1、插入数据,语法为【insert into my_enum val
      小编给大家分享一下如何在mysql中使用枚举类型,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
 
      枚举类型在mysql的使用方法:1、插入数据,语法为【insert into my_enum values (1),(2);】;2、错误数据,语法为【insert into my_enum values('male');】。
 
      枚举类型在mysql的使用方法:
 
      枚举:enum,实现将所有可能出现的结果都设计好,实际上存储的数据必须是规定好的数据中的一个。
 
枚举的使用方式
 
定义:enum(可能出现的元素列表);
 
如enum(‘男’,‘女’)
 
使用:存储数据,只能存储上面定义好的数据
 
意义在于:
 
1, 限定值的可能性!
 
2, 速度快,比普通的字符串速度快!
 
原因是枚举型 是利用 整数进行管理的,能够2个字节进行管理!
 
每个值,都是一个整数标识,从第一个选项开始为1,逐一递增!
 
管理时整数的形式,速度比字符串快!
 
一共有2 个字节,0-65535,因此可以有 65535个选项可以使用!、
 
创建枚举表
 
create table my_enum(
  gender enum('男','女','保密')
)charset utf8;
作用之一:规范数据格式,数据只能是规定的数据中的其中一个
 
作用之二:节省存储空间(枚举通常有一个别名:单选框),枚举实际存储的是数值,而不是字符串本身
 
在mysql中,系统也是自动转换格式的,而且基本与PHP一样(尤其是字符串转数字)
 
插入数据
 
-- 有效数据
 
insert into my_enum values('男'),('保密');
-- 数值插入枚举元素
 
insert into my_enum values (1),(2);
原理在下面
 
错误数据
 
insert into my_enum values('male'); -- 错误:没有该元素
证明字段存储的数据是数值:将数据去除了 +0 就可以判断出原来的数据存储的到底是字符串还是数值,如果是字符串最终结果永远是0,否则是其他值
 
-- 将字段结果取出来进行+0运算
 
select gender + 0,gender from my_enum;
找出了枚举元素的实际规律:按照元素出现的顺序,从1开始编号
 
枚举原理:枚举在进行数据规范的时候(定义的时候),系统会自动建立一个数字与枚举元素的对应关系(关系放到日志中);然后在进行数据插入的时候,系统自动将字符转换成对应的数字存储,然后在进行数据提取的时候,系统就自动将数字转换成字符串显示。
 
因为我枚举实际存储的是数值,所以可以直接插入数值
 
以上是如何在mysql中使用枚举类型的所有内容,感谢各位的阅读!

(编辑:92站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读