php - 在 Laravel 我得到错误 errno: 150 "Foreign key constraint is wrongly forms"
问题描述
我是 Laravel 的新手,我遇到了迁移问题。
表名拼写是准确的,但我仍然得到错误。
错误状态
SQLSTATE[HY000]:一般错误:1005 无法创建表
first_db
。#sql-41c_2f
(errno: 150 "Foreign key constraint is wrongly forms") (SQL: alter tablefees
add constraintfees_academic_id_foreign
foreign key (academic_id
) 引用academics
(academic_id
))
错误指向以下文件:
Schema::create('fees', function (Blueprint $table) {
$table->increments('fee_id');
$table->integer('academic_id')->unsigned;
$table->integer('level_id')->unsigned;
$table->integer('fee_type_id')->unsigned;
$table->string('fee_heading',200)->nullable;
$table->float('amount', 8, 2);
$table->foreign('academic_id')->references('academic_id')->on('academics');
$table->foreign('level_id')->references('level_id')->on('levels');
$table->foreign('fee_type_id')->references('fee_type_id')->on('feestype');
});
有什么我做错了吗?
解决方案
unsigned 应该是一个函数:
$table->integer('academic_id')->unsigned();
推荐阅读
- css - 样式在开发期间未应用于 vue Web 组件
- .net - 公共交通测试线束
- ios - 如何使用 readline 在 switch 中创建循环
- javascript - 获取文档的值
- javascript - 如何判断 html 字符串是否包含内容而不仅仅是标签
- java - 404 Not Found Spring Boot application using spring cloud starter security
- mysql - 将多个结果合并为列
- python - 填写后如何使用selenium python提交角度表单
- r - 未嵌套分组的平均值的总和
- c# - 使用 ARKit 和 ZXing 在 Unity 中读取二维码