Laravel 5.2 如何在不丢失数据的情况下更新迁移

2022-08-30 11:50:44

我使用的是laravel 5.2,我通常根据项目要求更新我的数据库,所以我想在不丢失数据库记录的情况下这样做。我不是说如何为我的数据库设定种子。我的意思是当我的数据库是实时的,我想更新它抛出laravel迁移。我打算扔Laravel文档,但我什么也没找到,所以我希望能找到一个人帮助我


答案 1

由于表中已有数据,因此可以创建新的迁移文件来更新表,而不是回滚迁移(这将导致现有数据丢失)。假设您有一个包含列的表。您在该表中存储了数据。然后,您意识到还需要添加一个名为 users 表的新列。为此,您需要创建一个新的迁移文件。命令将是:usersname, email, passwordmobile_no

php artisan make:migration add_mobile_no_columns_to_users_table --table=users

这样,将创建一个新的迁移文件。在那里设置您的列详细信息,使用运行迁移,仅此而已。您将在表格中拥有此新列,而不会丢失以前存储的数据。php artisan migrateusers


答案 2

请注意,当您在已有数据的情况下为表添加新列时,必须为新列设置默认值或将其设置为可为 null 的类型。否则你最终会出错


推荐