ALTER MATERIALIZED VIEW — マテリアライズドビューの定義を変更する
ALTER MATERIALIZED VIEW [ IF EXISTS ]nameaction[, ... ] ALTER MATERIALIZED VIEWnameDEPENDS ON EXTENSIONextension_nameALTER MATERIALIZED VIEW [ IF EXISTS ]nameRENAME [ COLUMN ]column_nameTOnew_column_nameALTER MATERIALIZED VIEW [ IF EXISTS ]nameRENAME TOnew_nameALTER MATERIALIZED VIEW [ IF EXISTS ]nameSET SCHEMAnew_schemaALTER MATERIALIZED VIEW ALL IN TABLESPACEname[ OWNED BYrole_name[, ... ] ] SET TABLESPACEnew_tablespace[ NOWAIT ] ここでactionは以下のいずれかです。 ALTER [ COLUMN ]column_nameSET STATISTICSintegerALTER [ COLUMN ]column_nameSET (attribute_option=value[, ... ] ) ALTER [ COLUMN ]column_nameRESET (attribute_option[, ... ] ) ALTER [ COLUMN ]column_nameSET STORAGE { PLAIN | EXTERNAL | EXTENDED | MAIN } CLUSTER ONindex_nameSET WITHOUT CLUSTER SET (storage_parameter=value[, ... ] ) RESET (storage_parameter[, ... ] ) OWNER TO {new_owner| CURRENT_USER | SESSION_USER }
ALTER MATERIALIZED VIEWは既存のマテリアライズドビューの各種補助属性を変更します。
ALTER MATERIALIZED VIEWを使用するためにはそのマテリアライズドビューを所有していなければなりません。
マテリアライズドビューのスキーマを変更するためには、新しいスキーマに対するCREATE権限を持たなければなりません。
所有者を変更するためには、新しく所有者となるロールの直接または間接的なメンバでなければなりません。
またそのロールはマテリアライズドビューのスキーマに対してCREATE権限を持たなければなりません。
(これらの制限により、マテリアライズドビューを削除し再作成することによってできる以上のことを所有者の変更で行えないようにします。
しかしスーパーユーザはいずれにせよ任意のビューの所有権を変更することができます。)
DEPENDS ON EXTENSIONの構文は、マテリアライズドビューが拡張に依存するものとして印を付けます。
これにより、拡張が削除されたときはマテリアライズドビューも自動的に削除されるようになります。
ALTER MATERIALIZED VIEW文で利用可能な副構文と操作は、ALTER TABLEで利用できるものの部分集合であり、マテリアライズドビューに対して使用した場合も同じ意味を持ちます。
詳細についてはALTER TABLEの説明を参照してください。
name既存のマテリアライズドビューの名前(スキーマ修飾可)です。
column_name新しいまたは既存の列の名前です。
extension_nameマテリアライズドビューが依存することになる拡張の名前です。
new_column_name既存の列に対する新しい名前です。
new_ownerマテリアライズドビューの新しい所有者となるユーザの名前です。
new_nameマテリアライズドビューの新しい名前です。
new_schemaマテリアライズドビューの新しいスキーマです。
マテリアライズドビューfooの名前をbarに変更します。
ALTER MATERIALIZED VIEW foo RENAME TO bar;
ALTER MATERIALIZED VIEWはPostgreSQLの拡張です。