迁移失败。不能删除表register_users和password_resets

时间:2018-04-08 15:45:16

标签: php database laravel migration

在laravel 5.4上迁移数据库时遇到问题 我创建了3个表,用户,register_users和password_resets,但问题是当我迁移数据库时,他们只创建用户表而不是register_users和password_resets。

迁移错误

enter image description here

数据库/表状态

enter image description here

2 个答案:

答案 0 :(得分:0)

在我看来,您的migrations表格丢失,被截断或只是与您的设置过时了。您的users表存在,但Laravel正在尝试在您运行php artisan migrate时创建它。

如果这只是一个本地开发环境,并且可以安全地执行此操作,则可以删除users表并再次运行该命令。使用你喜欢的任何东西,无论是phpMyAdmin,MySQL工作台还是命令行等。然后你只需要再次运行你的迁移。

如果您能够升级到使用Laravel 5.5,那么有一个新命令可以帮您省去麻烦:

php artisan migrate:fresh

删除架构中的所有表,然后从“新鲜”状态运行迁移。

答案 1 :(得分:0)

如果您可以登录mysql,请尝试删除包括migrations在内的所有表,如果它是localhost,则按以下步骤操作:

  1. 删除数据库:

    mysql -u root -e "drop database YOUR_DATABASE"

  2. 重新创建它:

    mysql -u root -e "create database YOUR_DATABASE"

  3. 运行迁移:

    php artisan migrate