错误:150"外键约束形成错误"在laravel 5.5

时间:2018-03-17 18:14:31

标签: php migration laravel-5.5

我有users表,其中我存储了所有学生教师详细信息。

教师可以创建学生,这些参考文件存储在users_references表中。

用户表

Schema::create('users', function (Blueprint $table) 
{
     $table->increments('id')->unsigned();
     $table->string('name');
     $table->string('uniqueid')->unique();
     $table->integer('contactnumber');
     $table->string('password');
}

users_references表

    Schema::create('users_references', function (Blueprint $table) {
        $table->increments('id');
        $table->integer('userid');
        $table->integer('teacherid');
        $table->enum('status',['A','I']);
        $table->timestamps();

        $table->foreign('userid')
              ->references('id')
              ->on('users')
              ->onDelete('cascade');

        $table->foreign('teacherid')
              ->references('id')
              ->on('users')
              ->onDelete('cascade');
    });

迁移时我收到错误

1 个答案:

答案 0 :(得分:0)

尝试在users_references表中为id添加unsigned()。 Laravel的增量('id')函数创建一个无符号整数,因此外键列也需要是无符号的。