让我们了解如何在MySQL中使用外键-
InnoDB表支持检查外键约束。仅仅需要联接两个表就不需要外键约束。可以在定义需要使用的列时用于InnoDB之外的存储引擎。该参考tableName(colName)没有实际作用,并且向用户提供了一个注释,即当前定义的列旨在引用其他表中的列。
MySQL不会做任何检查来确保'colName'实际上存在于'tableName'中,或者确保'tableName'本身确实存在。
在父表中,外键将充当主键。让我们看一个创建表的例子。
mysql> create table StudentEnrollment −> ( −> StudentId int, −> StudentName varchar(200), −> StudentFKPK int −> );
mysql> create table College −> ( −> StudentFKPK int, −> CourseId int, −> CourseName varchar(200), −> CollegeName varchar(200), −> primary key(StudentFKPK) −> );
在父表中,“ StudentFKPK”列是主键。我们将使用ALTER命令添加外键。
以下是添加外键的语法。
ALTER table yourChildTableName add constraint anyConstraintName foreign key(primary key column name for parent table) references College(primary key column name for parent table);