2017-01-25 5 views
0

PostgreSQLの持つ列名の変更:私は、移行中の列の名前を変更しようとする移行

エラーでこの結果を実行
\Schema::table('invitations', function (Blueprint $table) { 
    $table->renameColumn('service_id', 'project_id'); 
}); 

jsonb列として

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

私のテーブル、私は思いますそれは問題ですが、なぜこの問題が発生するのか分かりません(service_idjsonbの列ではないため)。

私の列の名前を変更するにはどうすればよいですか?(それはなぜ私が書いたものとうまくいかないのですか)

+0

'doctrine/dbal'を' composer.json'ファイルに追加し、 'composer update'を実行してください。 – AfikDeri

+0

@Afik​​Deri付属しています。 –

+0

トランザクション内に純粋なSQLのalter tableクエリを書くだけです。 'ALTER TABLE招待状RENAME COLUMN service_id TO project_id;' – maches

答えて

0

私は、MySQL、IMHO、Psqlとの違いはありません。 関数renameColumn()はDoctrine \ DBAL`でのみ動作し、この依存関係をプロジェクトに追加したくありませんでした。だから私はそのようにした。

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

私の英語のために申し訳ありません。

関連する問題