我开发了一个api,负责在我的数据库中存储用户详细信息,表名是users_containers
,它将包含一些用户数据,现在我想重命名该表名为users_data
而不丢失任何数据,如何实现这一目标…
Migration table
<?php
use IlluminateDatabaseMigrationsMigration;
use IlluminateDatabaseSchemaBlueprint;
use IlluminateSupportFacadesSchema;
class CreateUsersTable extends Migration
{
public function up()
{
Schema::create('users_containers', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->string('email')->unique();
$table->timestamp('email_verified_at')->nullable();
});
}
要更改表名,可以这样做:
Schema::rename('users_containers', 'users_data');
进行新的迁移:
php artisan make:migration rename_usercontainers_table
然后添加以下代码:
<?php
use IlluminateDatabaseMigrationsMigration;
use IlluminateDatabaseSchemaBlueprint;
use IlluminateSupportFacadesSchema;
class RenameUsersContainersTable extends Migration
{
public function up()
{
Schema::rename('users_containers', 'users_data');
}
}
?>
然后尝试运行migrate命令:php artisan migrate