Laravel 5.5 错误基表或视图已存在:1050 表“用户”已存在

新手上路,请多包涵

规格:

  • Laravel 版本:5.5.3
  • PHP版本:7.1
  • 数据库驱动和版本:MariaDB 10.1.26

描述:

 C:/Users/user/code/blog/>php artisan migrate

[Illuminate\Database\QueryException]
SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' already exists (SQL: create table users (id int unsigned not null aut
o_increment primary key, name varchar(255) not null, email varchar(255) not null, password varchar(255) not null, remember_token varchar
(100) null, created_at timestamp null, updated_at timestamp null) default character set utf8mb4 collate utf8mb4_unicode_ci engine = InnoDB R
OW_FORMAT=DYNAMIC)

[PDOException]
SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' already exists

重现步骤:

  C:/Users/user/code/blog/>laravel new website

 C:/Users/user/code/blog/>php artisan make:migration create_lists_table --create=lists

 C:/Users/user/code/blog/>php artisan migrate

问题

它创建用户表并给出错误但不创建列表表

原文由 Nitesh Kumar Niranjan 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 662
2 个回答

我通过更改我的 create_users_table.php 自己解决了我的问题

<?php

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreateUsersTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::dropIfExists('users');
        Schema::create('users', function (Blueprint $table) {
            $table->increments('id');
            $table->string('name');
            $table->string('email')->unique();
            $table->string('password');
            $table->rememberToken();
            $table->timestamps();
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('users');
    }
}

原文由 Nitesh Kumar Niranjan 发布,翻译遵循 CC BY-SA 3.0 许可协议

为避免此类错误,我认为最好在迁移文件中在 Schema::create(...) Schema::dropIfExists('table-name'); 。然后尝试 回滚 您的迁移并再次迁移您的表。

原文由 Codeparl 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题