CONSTRAINT子句能用來建立與另一表之間的關係。在ALTER TABLE語句及CREATE TABLE語句中使用 CONSTRAINT子句來創建或刪除條件。
CONSTRAINT 子句可分為兩種類型:第一種是在單一欄位上創建條件;第二種是在一個以上的欄位上創建條件。
Microsoft JET資料庫引擎並不支持使用CONSTRAINT,在實際套用中用DAO的Create方法來實現。
Microsoft JET資料庫引擎並不支持使用CONSTRAINT,在實際套用中用DAO的Create方法來實現。
語法:CONSTRAINT name {PRIMARY KEY | UNIQUE | NOT NULL | REFERENCES foreigntable [(foreignfield1, foreignfield2)]}
CONSTRAINT name {PRIMARY KEY (primary1[, primary2 [, ...]]) | UNIQUE (unique1[, unique2 [, ...]]) | NOT NULL (notnull1[, notnull2 [, ...]]) | FOREIGN KEY (ref1[, ref2 [, ...]]) REFERENCES foreigntable [(foreignfield1 [, foreignfield2 [, ...]])]}
CONSTRAINT name {PRIMARY KEY (primary1[, primary2 [, ...]]) | UNIQUE (unique1[, unique2 [, ...]]) | NOT NULL (notnull1[, notnull2 [, ...]]) | FOREIGN KEY (ref1[, ref2 [, ...]]) REFERENCES foreigntable [(foreignfield1 [, foreignfield2 [, ...]])]}
說明:第一條語句設定單一欄位條件;第二條語句設定多重欄位條件。
name用來指定要創建的條件的名稱。
UNIQUE保留字將欄位設計為唯一鍵,這表明在同一個表中的該欄位沒有兩個記錄的值是相同的。
PRIMARY KEY保留字將表中的欄位或一組欄位設計為主鍵,在主鍵之中所有的值必須是唯一的,且不可為 Null,一個表中只能有一個主鍵。
使用 FOREIGN KEY 保留字將一個欄位設定為外部鍵。
primary參數指定要設計成為主鍵的欄位的名稱。在多重欄位條件語句可以設定多個欄位。
unique參數指定要設計成為唯一鍵的一個或多個欄位之名稱。
notnull1, notnull2參數指定被限制為非 Null 值的欄位的名稱。
ref1, ref2參數用於指定引用另一個表的欄位的外部鍵欄位的名稱。
foreigntable參數包含了由foreignfield指定的欄位的外部表的名稱。
foreignfield1, foreignfield2參數由ref1、ref2指定的foreigntable 中的欄位的名稱。如果引用的欄位是 foreigntable 的主鍵,則可省略此子句。
name用來指定要創建的條件的名稱。
UNIQUE保留字將欄位設計為唯一鍵,這表明在同一個表中的該欄位沒有兩個記錄的值是相同的。
PRIMARY KEY保留字將表中的欄位或一組欄位設計為主鍵,在主鍵之中所有的值必須是唯一的,且不可為 Null,一個表中只能有一個主鍵。
使用 FOREIGN KEY 保留字將一個欄位設定為外部鍵。
primary參數指定要設計成為主鍵的欄位的名稱。在多重欄位條件語句可以設定多個欄位。
unique參數指定要設計成為唯一鍵的一個或多個欄位之名稱。
notnull1, notnull2參數指定被限制為非 Null 值的欄位的名稱。
ref1, ref2參數用於指定引用另一個表的欄位的外部鍵欄位的名稱。
foreigntable參數包含了由foreignfield指定的欄位的外部表的名稱。
foreignfield1, foreignfield2參數由ref1、ref2指定的foreigntable 中的欄位的名稱。如果引用的欄位是 foreigntable 的主鍵,則可省略此子句。