枚舉類型在mysql怎麼用

coldplay.xixi
發布: 2020-09-11 15:49:45
原創
7717 人瀏覽過

枚舉類型在mysql的使用方法:1、插入數據,語法為【insert into my_enum values (1),(2);】;2、錯誤數據,語法為【insert into my_enum values( 'male');】。

枚舉類型在mysql怎麼用

相關學習推薦: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開始編號

 

#枚舉原理:枚舉在進行資料規格的時候(定義的時候),系統會自動建立一個數字與枚舉元素的對應關係(關係放到日誌中);然後在進行資料插入的時候,系統會自動將字元轉換成對應的數字存儲,然後在進行資料擷取的時候,系統會自動將數字轉換成字串顯示。

因為我列舉實際儲存的是數值,所以可以直接插入數值

想了解更多程式設計學習,請關注php培訓欄位!

#

以上是枚舉類型在mysql怎麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板