MySQL中的外键(Foreign Key)是一种数据库约束,用于建立两个表之间的链接。外键约束确保了引用完整性,即在一个表(被引用表)中的数据必须在另一个表(引用表)中存在。外键的作用是维护数据的一致性和完整性。
MySQL中的外键支持以下几种类型:
外键通常用于以下场景:
以下是一个创建外键的示例:
CREATE TABLE parent (
id INT PRIMARY KEY,
name VARCHAR(255)
);
CREATE TABLE child (
id INT PRIMARY KEY,
parent_id INT,
name VARCHAR(255),
FOREIGN KEY (parent_id) REFERENCES parent(id) ON DELETE CASCADE
);在这个示例中,child表中的parent_id字段是一个外键,它引用了parent表中的id字段。ON DELETE CASCADE表示当parent表中的记录被删除时,child表中相关的记录也会被删除。
ON DELETE CASCADE或ON DELETE SET NULL等选项来处理删除操作。通过以上信息,您可以更好地理解MySQL中外键的概念、类型、应用场景以及常见问题的解决方法。