Mysql
 sql >> Database >  >> RDS >> Mysql

Errore MySQL durante la creazione di una chiave esterna con la migrazione di Laravel

La chiave esterna dovrebbe essere già nel database, quindi suggerisco di fare due passaggi. Inoltre suggerisco di creare la colonna user_id non firmato:

public function up()
{
    Schema::table('posts', function(Blueprint $table)
    {
        $table->integer('user_id')->after('id')->nullable()->unsigned();
    });

    Schema::table('posts', function(Blueprint $table)
    {
        $table->foreign('user_id')->references('id')->on('users');
    });
}