世界杯欧洲区预选赛_世界杯足球几年一次 - chinaacecloud.com



MySQLFOREIGN KEY外键约束

❮ 上一节

下一节 ❯

MySQL FOREIGN KEY 外键约束

MySQL FOREIGN KEY 外键约束

FOREIGN KEY 约束用于防止破坏表之间链接的操作。

FOREIGN KEY 是一个表中的字段(或字段集合),它引用 PRIMARY KEY 在另一个表中。

具有外键的表称为子表,具有主键的表称为引用表或父表。

看下面两张表:

Persons 表

PersonID

LastName

FirstName

Age

1

Hansen

Ola

30

2

Svendson

Tove

23

3

Pettersen

Kari

20

Orders 表

OrderID

OrderNumber

PersonID

1

77895

3

2

44678

3

3

22456

2

4

24562

1

注意 "Orders" 表中的 "PersonID" 列指向 "Persons" 表中的 "PersonID" 列。

"Persons" 表中的 "PersonID" 列是 "Persons" 表中的PRIMARY KEY。

"Orders" 表中 "PersonID" 列是 "Orders" 表中的FOREIGN KEY。

FOREIGN KEY 约束防止无效数据插入外键列,因为它必须是父表中包含的值之一。

FOREIGN KEY on CREATE TABLE

要在创建 "Orders" 表时在 "PersonID" 列上创建 FOREIGN KEY 约束,请使用以下 SQL:

CREATE TABLE Orders

(

OrderID int NOT NULL,

OrderNumber int NOT NULL,

PersonID int,

PRIMARY KEY (OrderID),

FOREIGN KEY (PersonID) REFERENCES Persons(PersonID)

);

允许命名 FOREIGN KEY 约束,并在多个列上定义 FOREIGN KEY 约束 ,请使用以下 SQL 语法:

CREATE TABLE Orders

(

OrderID int NOT NULL,

OrderNumber int NOT NULL,

PersonID int,

PRIMARY KEY (OrderID),

CONSTRAINT FK_PersonOrder FOREIGN KEY (PersonID)

REFERENCES Persons(PersonID)

);

FOREIGN KEY on ALTER TABLE

要在已建的 "Orders" 表的 "PersonID" 列上创建 FOREIGN KEY 约束,请使用以下 SQL:

ALTER TABLE Orders

ADD FOREIGN KEY (PersonID)

REFERENCES Persons(PersonID);

允许命名 FOREIGN KEY 约束,并在多个列上定义 FOREIGN KEY 约束 ,请使用以下 SQL 语法:

ALTER TABLE Orders

ADD CONSTRAINT FK_PersonOrder

FOREIGN KEY (PersonID)

REFERENCES Persons(PersonID);

删除 FOREIGN KEY 外键约束

要删除 FOREIGN KEY 约束,请使用以下 SQL:

ALTER TABLE Orders

DROP FOREIGN KEY FK_PersonOrder;

❮ 上一节

下一节 ❯