如何重命名一个现有的表名称在数据库中的larvel -8?



我开发了一个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

最新更新