首頁 >資料庫 >mysql教程 >mysql常見約束有哪些

mysql常見約束有哪些

青灯夜游
青灯夜游原創
2019-05-05 17:36:2527784瀏覽

mysql常見約束有:1、非空約束「not null」;2、唯一性約束「unique」;3、主鍵約束「primary key」;4、外鍵約束「foreign key」;5 、預設值約束「Default」等等。

mysql常見約束有哪些

推薦:《mysql教學

約束約束是一種限制,它透過對錶的行或列的資料做出限制,來確保表格的資料的完整性、唯一性。以下這篇文章就來跟大家介紹6種mysql常見的約束,希望對大家有幫助。

1、非空約束(not null)

非空約束用於確保目前列的值不為空值,非空約束只能出現在表格物件的列上。

Null類型特徵:所有的類型的值都可以是null,包括int、float 等資料型別

2、唯一性限制(unique)

唯一約束是指定table的列或列組合不能重複,保證資料的唯一性。

唯一約束不允許出現重複的值,但可以為多個null。

同一個表可以有多個唯一約束,多個列組合的約束。

在建立唯一約束時,如果不給唯一約束名稱,就預設和列名相同。

唯一約束不僅可以在一個表內創建,而且可以同時多表創建組合唯一約束。

3、主鍵約束(primary key) PK

主鍵約束相當於   唯一約束非空白約束  的組合,主鍵約束列不允許重複,也不允許出現空值。

每個表最多只允許一個主鍵,建立主鍵約束可以在列層級創建,也可以在表格層級建立。

當建立主鍵的約束時,系統預設會在所在的列和列組合上建立對應的唯一索引。

4、外鍵約束(foreign key) FK

外鍵約束是用來加強兩個表(主表和從表)的一列或多列資料之間的連接的,可以保證一個或兩個表之間的參照完整性,外鍵是構建於一個表的兩個字段或是兩個表的兩個字段之間的參照關係。

建立外鍵約束的順序是先定義主表的主鍵,然後定義從表的外鍵。也就是說只有主表的主鍵才能被從表用來作為外鍵使用,被約束的從表中的列可以不是主鍵,主表限制了從表更新和插入的操作。

5、預設值約束 (Default)

#若在表格中定義了預設值約束,使用者在插入新的資料行時,如果該行沒有指定數據,那麼系統將預設值賦給該列,如果我們不設定預設值,系統預設為NULL。

6、自增約束(AUTO_INCREMENT)

#自增約束(AUTO_INCREMENT)可以約束任何一個字段,該字段不一定是PRIMARY KEY字段,也就是說自增的欄位並不等於主鍵欄位。 

但是PRIMARY_KEY約束的主鍵字段,一定是自增字段,即PRIMARY_KEY 要與AUTO_INCREMENT一起作用於同一個字段。

當插入第一筆記錄時,自增字段沒有給定一個具體值,可以寫成DEFAULT/NULL,那麼以後插入字段的時候,該自增字段就是從1開始,沒插入一條記錄,此自增字段的值增加1。當插入第一筆記錄時,給自增欄位一個具體值,那麼以後插入的記錄在此自增欄位上的值,就在第一筆記錄該自增欄位的值的基礎上每次增加1。

也可以在插入記錄的時候,不指定自增字段,而是指定其餘字段進行插入記錄的操作。

以上是mysql常見約束有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn