mysql中常見的幾種約束有哪些

mysql中常見的幾種約束有:1、主鍵;2、默認值;3、唯一;4、外鍵;5、非空。約束是一種限制,它通過對表的行或列的數據做出限制,來確保表的數據的完整性、唯一性。

mysql中常見的幾種約束有哪些

約束是一種限制,它通過對表的行或列的數據做出限制,來確保表的數據的完整性、唯一性。

(推薦教程:mysql教程

MYSQL中常用的幾種約束:

1、主鍵

主鍵(PRIMARY KEY)是用于約束表中的一行,作為這一行的標識符,在一張表中通過主鍵就能準確定位到一行,因此主鍵十分重要。主鍵要求這一行的數據不能有重復且不能為空。

還有一種特殊的主鍵——復合主鍵。主鍵不僅可以是表中的一列,也可以由表中的兩列或多列來共同標識。

2、默認值

默認值約束(default)規定,當有DEFAULT約束的列,插入數據為空時該怎么辦。

DEFAULT約束只會在使用INSERT語句(上一實驗介紹過)時體現出來,INSERT語句中,如果被DEFAULT約束的位置沒有值,那么這個位置將會被DEFAULT的值填充。

3、唯一約束

唯一約束(UNIQUE)比較簡單,它規定一張表中指定的一列的值必須不能有重復值,即這一列每個值都是唯一的。

當INSERT語句新插入的數據和已有數據重復的時候,如果有UNIQUE約束,則INSERT失敗。

4、外鍵

外鍵(FOREIGN KEY)既能確保數據完整性,也能表現表之間的關系。

一個表可以有多個外鍵,每個外鍵必須REFERENCES(參考)另一個表的主鍵,被外鍵約束的列,取值必須在它參考的列中有對應值。

在INSERT時,如果被外鍵約束的值沒有在參考列中有對應,比如以下命令,參考列(department表的dpt_name)中沒有dpt3,則INSERT失敗

5、非空

非空約束(NOT NULL),聽名字就能理解,被非空約束的列,在插入值時必須非空。

在MySQL中違反非空約束,不會報錯,只會有警告。

相關推薦:mysql教程

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊11 分享