工匠跳过迁移

时间:2017-11-10 15:00:47

标签: laravel laravel-5 artisan laravel-migrations

所以,我刚刚从Github拉下Laravel 5中的一个项目,我以前没有做过任何工作,但我需要设置添加一个或三个功能。

问题是,我没有这个项目的任何数据库表。这应该很容易修复,因为迁移都在适当的文件夹中。

我运行php artisan migrate并告诉我其中一次迁移试图更新不存在的表时出现问题。

问题是,这不是按日期进行的第一次迁移。而早期的迁移应该创建一个表,它还没有说明。

基本上,它是这样的:

Migration 1
Migration 2
Migration 3
Migration 4
Migration 5 <--- here's where the error is occurring
Migration 6
etc....

在完全抛出错误的迁移之前,它似乎没有运行迁移,并且它没有向该模式中的迁移表写入任何内容。

我得到的错误是:

[Illuminate\Database\QueryException]
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'table1' doesn't exist (SQL: select * from `table1` where `code` = DEFAULT_ADDRESS limit 1)

[PDOException]
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'table1' doesn't exist

毋庸置疑,我对于为什么它会跳过迁移有点困惑,即使是那些不关心该表的迁移。

1 个答案:

答案 0 :(得分:0)

你应该跑:

php artisan migrate:status

它应该按照应该运行的顺序显示迁移。确保订单有效。如果不是某些东西搞砸了,您可能需要更改文件以获得有效的迁移顺序。