【MySQL】主键约束和外键约束
在MySQL中,主键约束(Primary Key Constraint)和外键约束(Foreign Key Constraint)是两种常用的数据库约束,用于保证数据的完整性和一致性。
主键约束:
- 保证了表中每一行数据的唯一性。
- 一个表中只能有一个主键。
- 主键自动定义为NOT NULL。
创建表时添加主键约束的示例代码:
CREATE TABLE Persons (
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
PRIMARY KEY (ID)
);
外键约束:
- 保证了表之间的数据一致性。
- 外键列和参照列必须是相似的类型。
- 外键列和参照列可以有不同的名称。
创建表时添加外键约束的示例代码:
CREATE TABLE Orders (
OrderID int NOT NULL,
OrderNumber int NOT NULL,
PersonID int,
PRIMARY KEY (OrderID),
FOREIGN KEY (PersonID) REFERENCES Persons(ID)
);
在已有表中添加或删除主键约束或外键约束的示例代码:
-- 添加外键约束
ALTER TABLE Orders
ADD FOREIGN KEY (PersonID) REFERENCES Persons(ID);
-- 删除外键约束
ALTER TABLE Orders
DROP FOREIGN KEY `Orders_ibfk_1`;
注意:在删除外键约束时,需要指定外键的名称,可以通过SHOW CREATE TABLE命令查看外键的名称。
评论已关闭