程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL字段中的枚舉

MySQL字段中的枚舉

編輯: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添加字段和刪除字段

MySQL字段類型簡介

Mysql外鍵用法分析

MySQL定義外鍵的方法

MySQL轉換Oracle的七大注意事項

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved