您好,登錄后才能下訂單哦!
小編給大家分享一下如何在mysql中使用枚舉類型,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
枚舉類型在mysql的使用方法:1、插入數據,語法為【insert into my_enum values (1),(2);】;2、錯誤數據,語法為【insert into my_enum values('male');】。
相關學習推薦:mysql教程
枚舉類型在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中使用枚舉類型的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。