Comment corriger l'erreur : General error: 1215 Cannot add foreign key constraint
Parfois après avoir lancé la commande :
php artisan migrate:fresh --seed
tu peux avoir l'erreur suivante :
Illuminate\Database\QueryException : SQLSTATE[HY000]: General error: 1215 Cannot add foreign key constraint (SQL: alter table
objectives
add constraint objectives_user_id_foreign
foreign key (user_id
) references users
(id
) on delete cascade)
Exception trace:
1 PDOException:"SQLSTATE[HY000]: General error: 1215 Cannot add foreign key constraint")
Une des solutions peut être que le type de données choisi entre le champ 'id' de la table concernée et l'id de la table référencée :
bigInteger versus Integer :
$table->bigIncrements('id');
$table->integer('user_id')->unsigned();
Tu peux corriger le code ci-dessus en le remplaçant par celui-ci :
$table->bigIncrements('id');
$table->bigInteger('user_id')->unsigned();
Il ne reste plus alors qu'à relancer la commande artisan :
php artisan migrate:fresh --seed
Et cela devrait fonctionner !
N'oublie pas de bien ajouter unsigned() ! Sans cela l'erreur persistera...
Fichiers attachés ::