第十八章 SQL命令 CREATE TABLE(五)
定义外键
外键是引用另一个表的字段;存储在外键字段中的值是唯一标识另一个表中的记录的值。此引用的最简单形式如下例所示,其中外键显式引用Customers表中的主键字段CustID:
CREATE TABLE Orders (
OrderID INT UNIQUE NOT NULL,
OrderItem VARCHAR,
OrderQuantity INT,
CustomerNum INT,
CONSTRAINT OrdersPK PRIMARY KEY (OrderID),
CONSTRAINT CustomersFK FOREIGN KEY (CustomerNum) REFERENCES Customers (CustID)
)
最常见的情况是,外键引用另一个表的主键字段。但是,外键可以引用RowID(ID)或标识列。在任何情况下,外键引用都必须存在于被引用的表中,并且必须定义为唯一的;被引用的字段不能包含重复值或NULL。
在外键定义中,可以指定:
- 字段名:
FOREIGN KEY (CustomerNum) REFERENCES Customers (CustID)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-f9VqwzNP-1608850948003)(3E1D939266954ED48BDAEA9B8086B11E)]](https://img-blog.csdnimg.cn/20201225070433434.png)