我之前收到过这个错误,但这一次有点不同。
当我将更新推送到伪造时,Laravel Forge说它无法部署,但部署得很好。由于此错误,它不会对数据库结构进行任何更改:
[学说\ DBAL \驱动\ PDOException]
SQLSTATE [42S01]:基表或视图已存在:1050表 ' job_posts'已存在
当我运行php artisan migrate:status
时,job_posts表是唯一一个显示为未运行的表,即使它已经显然已经运行了。
同样删除现有的表或任何会删除现有记录的内容都是不可能的,因为这个更改是在几周前完成的,并且用户已经开始使用它。
有没有办法在不删除现有记录的情况下解决这个问题?
答案 0 :(得分:1)
在您的迁移中,您只需使用
即可if (!Schema::hasTable('job_posts')) {
// your migrations
}
如果为false,则运行迁移。
这样您的记录就不会被删除。
希望这有帮助