MySQL中添加约束语法之间的区别?

时间:2018-12-19 07:40:28

标签: mysql

因此,我将外键约束应用于MySQL表中的列。

我注意到,我可以通过两种方式做到这一点-

ALTER TABLE book ADD CONSTRAINT fk_code_id FOREIGN KEY(book_type) REFERENCES code(id);

ALTER TABLE book ADD FOREIGN KEY(book_type) REFERENCES code(id);

为什么我们有两种方法可以实现同一件事?

2 个答案:

答案 0 :(得分:1)

带有Constraint选项的变更表,用于向MySQL数据库表添加检查约束。  添加约束功能允许用户添加约束名称和约束条件。

https://razorsql.com/features/mysql_add_constraint.html

通过此ALTER TABLE book ADD FOREIGN KEY(book_type) REFERENCES code(id),您只需在两个表之间建立fk即可。

答案 1 :(得分:1)

在已经创建“订单”表后,在“ PersonID”列上创建FOREIGN KEY约束,请使用以下SQL:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Orders
ADD FOREIGN KEY (PersonID) REFERENCES Persons(PersonID);

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

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Orders
ADD CONSTRAINT FK_PersonOrder
FOREIGN KEY (PersonID) REFERENCES Persons(PersonID);