SQL 約束(Constraints)
SQL 約束(Constraints)
SQL 約束用於規定表中的數據規則。
如果存在違反約束的數據行為,行為會被約束終止。
約束可以在創建表時規定(通過 CREATE TABLE 語句),或者在表創建之後規定(通過 ALTER TABLE 語句)。
SQL CREATE TABLE + CONSTRAINT 語法
CREATE TABLE
table_name
(
column_name1 data_type(
size)
constraint_name,
column_name2 data_type(
size)
constraint_name,
column_name3 data_type(
size)
constraint_name,
....
);
在 SQL 中,我們有如下約束:
-
NOT NULL - 指示某列不能存儲 NULL 值。
-
UNIQUE - 保證某列的每行必須有唯一的值。
-
PRIMARY KEY - NOT NULL 和 UNIQUE 的結合。確保某列(或兩個列多個列的結合)有唯一標識,有助於更容易更快速地找到表中的一個特定的記錄。
-
FOREIGN KEY - 保證一個表中的數據匹配另一個表中的值的參照完整性。
-
CHECK - 保證列中的值符合指定的條件。
-
DEFAULT - 規定沒有給列賦值時的默認值。
在下面的章節,我們會詳細講解每一種約束。