数据迁移无法添加外键约束,错误代码 1215

错误问题排除项:
1、两个字段类型必须一致
2、数据库引擎 InnoDB
3、原有数据表字段必须已加索引(重要)

例错误代码:

SQLSTATE[HY000]: General error: 1215 Cannot add foreign key constraint (SQL: alter table `user_addresses` add constraint `user_addr
  esses_user_id_foreign` foreign key (`user_id`) references `users` (`id`) on delete cascade)

解析:
原 users 表默认 id 已是主键,默认情况是不会出现上面错误的,但是像我爱折腾,users 表用 uid 表示用户识别码,未设置索引,导致迁移表时报错 1215。
解决办法:
新建 users 表 uid 字段时加上索引 index ()

$table->bigInteger('uid')->index()->after('id');
本作品采用《CC 协议》,转载必须注明作者和本文链接
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。