中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQL數據庫中ENUM類型的作用是什么

發布時間:2021-08-04 16:49:06 來源:億速云 閱讀:183 作者:Leah 欄目:數據庫

本篇文章給大家分享的是有關MySQL數據庫中ENUM類型的作用是什么,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

  MySQL數據庫中ENUM類型是什么意思

  ENUM類型是一個字符串對象,其值通常選自一個允許值列表中,該列表在表創建時的列規格說明中被明確地列舉。

  在下列某些情況下,值也可以是空串("")或NULL。

  如果將一個無效值插入一個ENUM(即,一個不在允許值列表中的字符串),空字符串將作為一個特殊的錯誤值被插入。事實上,這個字符串有別于一個"普通的"空字符串,因為這個字符串有個數字索引值為0。稍后有更詳細描述。

  如果一個ENUM被聲明為NULL,NULL也是該列的一個合法值,并且該列的缺省值也將為NULL。如果一個ENUM被聲明為NOTNULL,該列的缺省值將是該列表所允許值的第一個成員。每個枚舉值均有一個索引值。

  在列說明中列表值所允許的成員值被從1開始編號。

  空字符串錯誤值的索引值為0。這就意味著,你可以使用下面所示的SELECT語句找出被賦于無效ENUM值的記錄行。mysql>SELECT*FROMtbl_nameWHEREenum_col=0;

  MySQL數據庫中ENUM類型是什么意思

  NULL值的索引值為NULL。例如,指定為ENUM("one","two","three")的一個列,可以有下面所顯示的任一值。每個值的索引值也如下所示:值索引值NULLNULL""0"one"1"two"2"three"3換個枚舉最大可以有65535個成員值。從MySQL3.23.51開始,當表被創建時,ENUM值尾部的空格將會自動刪除。當為一個ENUM列賦值時,字母的大小寫是無關緊要的。然而,以后從列中檢索出來的值的大小寫卻是匹配于創建表時所指定的允許值。

  如果在一個數字語境中檢索一個ENUM,列值的索引值將被返回。例如,你可以像這樣使用數字值檢索一個ENUM列:mysql>SELECTenum_col+0FROMtbl_name;

  如果將一個數字存儲到一個ENUM中,數字被當作為一個索引值,并且存儲的值是該索引值所對應的枚舉成員。(但是,這在LOADDATA將不能工作,因為它視所有的輸入均為字符串。)在一個ENUM字符串中存儲數字是不明智的,因為它可能會打亂思維。

  ENUM值依照列規格說明中的列表順序進行排序。(換句話說,ENUM值依照它們的索引號排序。)舉例來說,對于ENUM("a","b"),"a"排在"b"后,但是對于ENUM("b","a"),"b"卻排在"a"之前。空字符串排在非空字符串前,NULL值排在其它所有的枚舉值前。為了防止意想不到的結果,建議依照字母的順序定義ENUM列表。也可以通過使用GROUPBYCONCAT(col)來確定該以字母順序排序而不是以索引值。

  如果希望得到一個ENUM列的所有可能值,可以使用SHOWCOLUMNSFROMtable_nameLIKEenum_colum來實現。

以上就是MySQL數據庫中ENUM類型的作用是什么,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

虎林市| 宜川县| 铁岭县| 台中县| 孟连| 凤冈县| 红安县| 高阳县| 延川县| 高唐县| 桃园市| 彰武县| 邻水| 交口县| 汤阴县| 丽江市| 满城县| 襄汾县| 福清市| 西华县| 县级市| 噶尔县| 洱源县| 监利县| 信丰县| 佳木斯市| 尤溪县| 隆化县| 永宁县| 曲水县| 新安县| 右玉县| 宜兰县| 永德县| 乾安县| 华坪县| 海城市| 夏津县| 玉门市| 务川| 红安县|