PostgreSQL での列の位置の変更: 制限事項と代替案の調査
PostgreSQL データベースは、列の位置を調整することに関しては柔軟性が低いように見えるかもしれません。テーブル。あなたが言及したような試み (「ALTER TABLE person ALTER COLUMN dob POSITION 37;」) にもかかわらず、このようなコマンドを使用して列の物理的な位置を変更することは依然として不可能です。
PostgreSQL Wiki の「Alter columnposition」ページによると、列の順序の修正は、pg_attribute テーブルの attnum 値に依存します。変更を行うと、希望の配置になるまでテーブルを再作成するか、複雑なデータ操作が必要になります。
逆説的に見えるかもしれませんが、SQL 標準自体には列の位置を変更する手段が提供されていません。このような機能を提供するデータベース ベンダーは、基本的に SQL 構文を拡張しています。
データベース アクセス パスは既存の列レイアウトに基づいて最適化される可能性があるため、列の順序を操作するとパフォーマンスに影響を及ぼす可能性があることに注意することが重要です。
列の位置を変更する機能は本質的にサポートされていない可能性がありますが、VIEW を作成することでこの制限を回避できます。 VIEW を定義すると、ベース テーブルの基礎となる構造を変更せずに、列の順序を好みに合わせて指定できます。
以上がPostgreSQL は本当に列の順序を変更できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。