Php 拉威尔:无法迁移。一般错误:1005

Php 拉威尔:无法迁移。一般错误:1005,php,database,laravel,Php,Database,Laravel,我遵循Laracasts TDD,我遇到了一个无论我做什么都无法解决的错误。当我尝试迁移时,它会显示以下错误: Illumb\Database\QueryException:SQLSTATE[HY000]:一般错误: 1005无法创建表birdboard#sql-14b8_86(错误号:150 “外键约束格式不正确”)(SQL:alter table projects添加约束projects\u owner\u id\u foreign外键 (owner\u id)引用users(id) 我知道

我遵循Laracasts TDD,我遇到了一个无论我做什么都无法解决的错误。当我尝试迁移时,它会显示以下错误:

Illumb\Database\QueryException:SQLSTATE[HY000]:一般错误: 1005无法创建表
birdboard
#sql-14b8_86
(错误号:150 “外键约束格式不正确”)(SQL:alter table
projects
添加约束
projects\u owner\u id\u foreign
外键 (
owner\u id
)引用
users
id

我知道Laravel现在用unsignedBigInteger代替unsignedInteger,用bigIncrements代替Increments。我都做过了。 在我的AppServiceProvider.php中,我还添加了:

use Illuminate\Support\Facades\Schema;
    public function boot()
    {
        Schema::defaultStringLength(191);
    }
应用程序服务提供商:

<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\Schema;

class AppServiceProvider extends ServiceProvider
{

    public function register()
    {
        //
    }


    public function boot()
    {
        Schema::defaultStringLength(191);
    }
}

我认为您需要编辑该问题,并发布您的所有者模型。数据类型可能有所不同

$table->unsignedBigInteger('owner_id');

验证您是否在两个表中使用了相同的数据类型,即“外部”中的owern_id和主表中的id

从create
Schema::dropIfExists('projects')中删除此行。问题似乎出在birdboard表上,而不是这个表上?Laravel的哪个版本?用户的
id
也是
bigIncrement
?尝试运行
migrate:fresh
@DinoNumić
birdboard
似乎是数据库的名称,而不是表名是的。这是正确答案,谢谢。似乎我在users表中使用了增量id,在projects表中使用了unsignedBigInteger,这导致了冲突。
$table->unsignedBigInteger('owner_id');