【问题标题】:laravel migrate failed - getting an errorlaravel 迁移失败 - 出现错误
【发布时间】:2021-10-20 04:04:26
【问题描述】:

我对迁移模式进行了一些更改, 所以我尝试更新我的迁移,但出现错误:

我会很感激你的回答:)

我的迁移失败:

实现与PK的迁移 FK

错误信息:

【问题讨论】:

  • 尝试使用$table->unsignedBigInteger('user_id') 或更好地使用foreignId()
  • 不要发帖images of code!

标签: php mysql laravel database-migration


【解决方案1】:

确保列的类型完全相同,->id() 是“bigIncrements 方法的别名”,它反过来“创建一个自动递增的 UNSIGNED BIGINT (主键)等效列”。

将您的 user_id 列更改为

$table->unsignedBigInteger('user_id');

https://laravel.com/docs/8.x/migrations#available-column-types

(还要确保您的users 表是在您的ads 表之前创建的。)

【讨论】:

    【解决方案2】:

    在您的迁移广告中使用foreignId,如下所示:

    $table->foreignId('user_id')->constrained('users')->onDelete('cascade');
    $table->timestamps();
    

    更多:https://laravel.com/docs/8.x/migrations#foreign-key-constraints

    【讨论】:

      猜你喜欢
      • 2020-05-13
      • 1970-01-01
      • 2017-07-16
      • 1970-01-01
      • 2016-02-16
      • 1970-01-01
      • 2021-08-10
      • 1970-01-01
      相关资源
      最近更新 更多