Laravel迁移而不丢失真实数据


Laravel migration without losing the real data

是否有可能运行artisan命令来刷新数据库而不丢失任何数据?

在我过去的工作中,laravel使用push可以创建数据库,但使用propel:migration:diff不会丢失任何实际数据。

无论如何,对于laravel默认的artisan migrate,它能以同样的方式做到吗?

根据定义,刷新数据库(php artisan migrate:refresh)意味着删除所有数据。

我们的想法是,您正在回滚并重新运行所有迁移,这可能意味着您的模式发生了一些变化,如果不是很大的话,因此数据库中的当前数据可能与新模式不匹配(如果匹配,那么为什么要刷新)。

更好的方法是在开发过程中添加迁移以更改列和表。事实上,这是为DB提供这种类型的"版本控制"的主要优势之一。