时间:2022-10-25 09:32:54 | 栏目:PHP代码 | 点击:次
场景
如果现在有两张表,一张表是文章表articles,一张表是分类表categories,其中在文章表中有一个分类字段category_id,现在想在删除分类表中的某一分类时,该分类下的所有文章也一起被删除,那么这时候就可以用到外键约束
具体用法如下:
给文章表添加外键约束
$table->unsignedInteger('category_id')->comment('文章所属分类|select'); $table->foreign('category_id')->references('id')->on('categories')->onDelete('cascade');
其中需要注意的是分类表categories中的主键字段id与文章表articles中的外键字段category_id的数据类型或者是数据长度要保持一致,因为作为主键的id值是从1开始自增的,所以在被其绑定的外键字段的数据类型就不能使用integer,而要改用unsignedInteger