在MySQL中设置外键的步骤如下:
1. 确保两个表都已经创建,并且外键列的数据类型必须与父表主键列的数据类型相同。
2. 在创建子表时,可以使用`FOREIGN KEY`关键字在列定义中添加外键约束。语法如下:
```sql
CREATE TABLE 子表 (
...
外键列名 数据类型,
...
FOREIGN KEY (外键列名) REFERENCES 父表 (父键列名) [ON DELETE {CASCADE|SET NULL|NO ACTION|RESTRICT}] [ON UPDATE {CASCADE|SET NULL|NO ACTION|RESTRICT}]
);
```
`外键列名`:子表中作为外键的列名。
`父表`:外键引用的父表名称。
`父键列名`:父表中作为外键引用的主键列的名称。
`ON DELETE` 和 `ON UPDATE`:定义当被引用的记录在父表中删除或更新时,如何处理子表中的外键记录。可选值有`CASCADE`(级联删除或更新)、`SET NULL`(将外键列设置为NULL)、`NO ACTION`(禁止删除或更新)、`RESTRICT`(禁止删除或更新,违反约束时回滚事务)。
3. 如果已经创建了表,可以使用`ALTER TABLE`语句添加外键约束。语法如下:
```sql
ALTER TABLE 子表
ADD FOREIGN KEY (外键列名) REFERENCES 父表 (父键列名) [ON DELETE {CASCADE|SET NULL|NO ACTION|RESTRICT}] [ON UPDATE {CASCADE|SET NULL|NO ACTION|RESTRICT}];
```
请根据实际需求选择合适的方法来设置外键约束。