【问题标题】:Cannot create migrations Laravel无法创建迁移 Laravel
【发布时间】:2018-03-06 18:46:52
【问题描述】:

我想和 Laravel 一起工作,不想搞那么多炒作。 慢慢地,我没有耐心了。 我试着让它工作了几个星期,现在我终于做到了——但我似乎无法创建迁移...

创造自己是可能的。 但是当我输入

php artisan migrate

发生错误:

[Illuminate\Database\QueryException] SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' already exists (SQL: create tableusers(idint unsigned not null auto_increment primary key,namevarchar(255) not null,emailvarchar(255) not null, passwordvarchar(255) not null,remember_tokenvarchar(100) null, created_attimestamp null,updated_at`tim estamp null) 默认 字符集 utf8mb4 整理 utf8mb4_unicode_ci)

[PDOException] SQLSTATE[42S01]:基表或视图已存在: 1050 表“用户”已存在`

有什么我可以做的吗? 它正在尝试迁移错误的迁移... Laravel 很酷,但是每 5 分钟就会出现一些奇怪的 bug(虽然我只是按照教程...)

【问题讨论】:

  • 那么,Table 'users' already exists 消息中的 unclear 是什么?
  • 我知道它存在,但它不是正确的迁移,无论我做什么,它都会尝试创建用户表。
  • 迁移按照up 函数中的说明进行操作。显然,您的迁移尝试创建表 两次
  • 没有。我什至没有编辑它,它是自动生成的。我讨厌 Laravel 的这一点,它从来没有用过 :(
  • 那你又要迁移同一个文件了吗?为什么?

标签: php mysql database laravel laravel-5


【解决方案1】:

如果您使用的是 Laravel 5.5,请使用

php artisan migrate:fresh

【讨论】:

    【解决方案2】:

    它不是错误迁移系统,不像外部编辑

    使用

    php artisan migrate:refresh
    //or
    php artisan migrate:refresh --seed
    

    【讨论】:

    • @T.Smith 你也可以使用iseed根据当前数据库创建播种机
    【解决方案3】:

    我建议阅读以下内容。 http://laravelbook.com/laravel-migrations-managing-databases/

    我希望您没有创建迁移跟踪表。

    php artisan migrate:install
    

    Laravel 的说明可能不清楚,你只需要完成它。

    【讨论】:

      猜你喜欢
      • 2020-04-13
      • 1970-01-01
      • 2020-05-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-17
      • 2013-09-26
      • 2017-07-02
      相关资源
      最近更新 更多