2
2

More than 3 years have passed since last update.

Illuminate\Database\QueryException : SQLSTATE[HY000]: General error: 3780 Referencing column 'user_id' and referenced column 'id' in foreign key constraint

Last updated at Posted at 2019-12-26

user.idとhoges.user_idでリレーションをはるmigrationを作るとき。

前提

laravel version 6.9.0

hogesテーブルのエラー

Illuminate\Database\QueryException  : SQLSTATE[HY000]: General error: 3780 Referencing column 'user_id' and referenced column 'id' in foreign key constraint 'hoges_user_id_foreign' are incompatible. (SQL: alter table `hoges` add constraint `hoges_user_id_foreign` foreign key (`user_id`) references `users` (`id`))

古いやり方を見て、そのままやってうまく行かなかったパターン。
公式を見るのが大事ですね。

失敗時
$table->integer('user_id')->unsigned();
$table->foreign('user_id')->references('id')->on('users');
成功時
$table->unsignedBigInteger('user_id');
$table->foreign('user_id')->references('id')->on('users');

Database: Migrations - Laravel - The PHP Framework For Web Artisans

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2