在迁移中使用 postgreSQL 重命名列

Renaming column with postgreSQL in a migration

我尝试重命名迁移中的列:

\Schema::table('invitations', function (Blueprint $table) {
    $table->renameColumn('service_id', 'project_id');
});

运行 这会导致错误:

Unknown database type jsonb requested, Doctrine\DBAL\Platforms\PostgreSQL92Platform may not support it.

我的table作为jsonb专栏,我认为是问题所在但我不知道为什么会出现这个问题(因为service_id不是jsonb列)。

如何重命名我的专栏?(为什么我写的内容不起作用?)

我为 MySQL 编写了类似的迁移,恕我直言,与 Psql 没有区别。 函数 renameColumn() 仅适用于 Doctrine\DBAL`,我不想将此依赖项添加到我们的项目中。所以我就这样做了

DB::transaction( function () {
    DB::raw('ALTER TABLE invitations RENAME COLUMN service_id TO project_id');
});

对不起我的英语。