【问题标题】:Not able to see foreign keys in PHPMyAdmin created using Laravel migration无法在使用 Laravel 迁移创建的 PHPMyAdmin 中看到外键
【发布时间】:2019-09-10 23:50:01
【问题描述】:

我正在尝试使用引用 Laravel 的默认“用户”表的外键创建一个简单的表。

迁移成功,但是当我在 PHPMyAdmin 中看到新创建的表时,它没有显示外键。

这是我的简单迁移文件:

Schema::create('larachat_chat_rooms', function (Blueprint $table) {
        $table->increments('id');
        $table->unsignedBigInteger('creator_id')->references('id')->on('users')->onDelete('cascade');
        $table->timestamps();
        $table->softDeletes();
    });

【问题讨论】:

    标签: mysql laravel phpmyadmin foreign-keys laravel-migrations


    【解决方案1】:

    你可以试试这个并运行php artisan migrate

    Schema::create('larachat_chat_rooms', function (Blueprint $table) {
            $table->increments('id');
            $table->unsignedBigInteger('creator_id');
            $table->softDeletes();
            $table->timestamps();
    
    
            $table->foreign('creator_id')->references('id')->on('users')->onDelete('cascade');
        });
    

    如果它适合您,请告诉我。我的想法是,您需要先创建列,然后您可以将其指定为外键。参考doc

    【讨论】:

    • 这是正确答案。正要发布它,但你已经这样做了:)
    【解决方案2】:

    从 phpmyadmin 转到特定表 => 操作选项卡 => 表选项 => 将存储引擎更改为 innoDB 保存并返回到您的表,您将看到关系视图

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-08-16
      • 2016-11-20
      • 2016-06-24
      • 1970-01-01
      • 2023-03-08
      • 2023-01-04
      • 2018-05-16
      相关资源
      最近更新 更多