ALTER VIEW
ALTER VIEW ステートメントは、既存のビューのさまざまなプロパティの変更を許可し、Aurora DSQL はこのコマンドのすべての PostgreSQL 構文をサポートします。
サポートされている構文
ALTER VIEW [ IF EXISTS ] name ALTER [ COLUMN ] column_name SET DEFAULT expression ALTER VIEW [ IF EXISTS ] name ALTER [ COLUMN ] column_name DROP DEFAULT ALTER VIEW [ IF EXISTS ] name OWNER TO { new_owner | CURRENT_ROLE | CURRENT_USER | SESSION_USER } ALTER VIEW [ IF EXISTS ] name RENAME [ COLUMN ] column_name TO new_column_name ALTER VIEW [ IF EXISTS ] name RENAME TO new_name ALTER VIEW [ IF EXISTS ] name SET SCHEMA new_schema ALTER VIEW [ IF EXISTS ] name SET ( view_option_name [= view_option_value] [, ... ] ) ALTER VIEW [ IF EXISTS ] name RESET ( view_option_name [, ... ] )
説明
ALTER VIEW は、ビューの各種補助プロパティを変更します。(ビューを定義するクエリを変更する場合は、CREATE OR REPLACE VIEW を使用します。) ALTER VIEW を使用するには、ビューを所有している必要があります。ビューのスキーマを変更するには、新しいスキーマに対する CREATE 権限も必要です。所有者を変更するには、新しい所有者ロールに対して SET ROLE ができなければなりません。また、そのロールにはビューのスキーマに対する CREATE 権限が必要です。
パラメータ
name-
既存のビューの名前 (オプションでスキーマ修飾可) です。
column_name-
既存の列の名前、または既存の列の新しい名前。
IF EXISTS-
ビューが存在しなかったとしてもエラーになりません。この場合、通知が発行されます。
SET/DROP DEFAULT-
これらのフォームは、列のデフォルト値を設定または削除します。ビュー列のデフォルト値は、ビューを対象とした任意の
INSERTまたはUPDATEコマンドに代入されます。 new_owner-
ビューの新しい所有者のユーザー名です。
new_name-
ビューの新しい名前です。
new_schema-
ビューの新しいスキーマです。
SET ( view_option_name [= view_option_value] [, ... ] )-
ビューのオプションを設定します。サポートされているオプションは以下のとおりです。
-
check_option (enum)– ビューのチェックオプションを変更します。値はlocalまたはcascadedである必要があります。 -
security_barrier (boolean)– ビューのセキュリティバリアプロパティを変更します。 -
security_invoker (boolean)– ビューのセキュリティ呼び出しプロパティを変更します。
-
RESET ( view_option_name [, ... ] )-
ビューのオプションをデフォルト値にリセットします。
例
ビュー foo の名前を bar に変更します。
ALTER VIEW foo RENAME TO bar;
更新可能なビューにデフォルトの列値を付与します。
CREATE TABLE base_table (id int, ts timestamptz); CREATE VIEW a_view AS SELECT * FROM base_table; ALTER VIEW a_view ALTER COLUMN ts SET DEFAULT now(); INSERT INTO base_table(id) VALUES(1); -- ts will receive a NULL INSERT INTO a_view(id) VALUES(2); -- ts will receive the current time
互換性
ALTER VIEW は、Aurora DSQL がサポートする SQL 標準の PostgreSQL 拡張です。