在MySQL中,外键(Foreign Key)是用来建立两个表之间互相关联的机制。创建外键关联可以保证数据的一致性和完整性。
创建外键关联,首先需要先创建两个表,假设我们有两个表students和classrooms:
CREATE TABLE students ( id INT NOT NULL AUTO_INCREMENT, name VARCHAR(50) NOT NULL, class_id INT NOT NULL, PRIMARY KEY (id), FOREIGN KEY (class_id) REFERENCES classrooms(id) ); CREATE TABLE classrooms ( id INT NOT NULL AUTO_INCREMENT, name VARCHAR(50) NOT NULL, PRIMARY KEY (id) );
从上面的代码可以看到,students表中的class_id列是用来与classrooms表中的id列建立外键关联的。这样,students表中的每个学生都会与一个班级相关联。
在创建外键关联时,需要使用FOREIGN KEY关键字。在students表中,我们用FOREIGN KEY (class_id) REFERENCES classrooms(id)语句来指定class_id列与classrooms表中的id列建立关联。
需要注意的是,建立外键关联时,两个表的数据类型必须一致。如果不一致,会出现错误。此外,建立外键关联会影响查询速度,因此不要滥用外键关联,只在必要时使用。