有没有一种方法可以运行 artisan 命令来刷新数据库而不丢失任何数据?
在我过去的工作中,使用 propel 的 laravel 可以创建数据库,但不会丢失任何使用 propel:migration:diff
的真实数据。
无论如何,对于 laravel default artisan migrate,它能以同样的方式做到吗?
最佳答案
根据定义,刷新数据库 (php artisan migrate:refresh
) 意味着您要删除所有数据。
这个想法是,您要回滚并重新运行所有迁移,这可能意味着您的模式发生了一些变化,如果不是很明显的话,因此数据库中的当前数据可能与新模式不匹配(并且如果是这样,那你为什么要刷新)。
更好的方法是在开发过程中添加迁移以更改列和表。事实上,这是为您的数据库提供这种类型的“版本控制”的主要优势之一。
关于php - 不丢失真实数据的 Laravel 迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34603047/