Postgresql 中文操作指南

ALTER MATERIALIZED VIEW

ALTER MATERIALIZED VIEW - 更改物化视图的定义

ALTER MATERIALIZED VIEW — change the definition of a materialized view

Synopsis

ALTER MATERIALIZED VIEW [ IF EXISTS ] name
    action [, ... ]
ALTER MATERIALIZED VIEW name
    [ NO ] DEPENDS ON EXTENSION extension_name
ALTER MATERIALIZED VIEW [ IF EXISTS ] name
    RENAME [ COLUMN ] column_name TO new_column_name
ALTER MATERIALIZED VIEW [ IF EXISTS ] name
    RENAME TO new_name
ALTER MATERIALIZED VIEW [ IF EXISTS ] name
    SET SCHEMA new_schema
ALTER MATERIALIZED VIEW ALL IN TABLESPACE name [ OWNED BY role_name [, ... ] ]
    SET TABLESPACE new_tablespace [ NOWAIT ]

where action is one of:

    ALTER [ COLUMN ] column_name SET STATISTICS integer
    ALTER [ COLUMN ] column_name SET ( attribute_option = value [, ... ] )
    ALTER [ COLUMN ] column_name RESET ( attribute_option [, ... ] )
    ALTER [ COLUMN ] column_name SET STORAGE { PLAIN | EXTERNAL | EXTENDED | MAIN | DEFAULT }
    ALTER [ COLUMN ] column_name SET COMPRESSION compression_method
    CLUSTER ON index_name
    SET WITHOUT CLUSTER
    SET ACCESS METHOD new_access_method
    SET TABLESPACE new_tablespace
    SET ( storage_parameter [= value] [, ... ] )
    RESET ( storage_parameter [, ... ] )
    OWNER TO { new_owner | CURRENT_ROLE | CURRENT_USER | SESSION_USER }

Description

ALTER MATERIALIZED VIEW 更改现有物化视图的各种辅助属性。

ALTER MATERIALIZED VIEW changes various auxiliary properties of an existing materialized view.

您必须拥有物化视图才能使用 ALTER MATERIALIZED VIEW 。要更改物化视图的架构,还必须对新架构具有 CREATE 权限。要更改所有者,您必须能够将 SET ROLE 更改为新拥有者角色,该角色必须对物化视图的架构具有 CREATE 权限。(这些限制强制要求更改所有者不会执行您无法通过删除和重新创建物化视图所执行的任何操作。但是,超级用户无论如何都可以更改任何视图的所有权。)

You must own the materialized view to use ALTER MATERIALIZED VIEW. To change a materialized view’s schema, you must also have CREATE privilege on the new schema. To alter the owner, you must be able to SET ROLE to the new owning role, and that role must have CREATE privilege on the materialized view’s schema. (These restrictions enforce that altering the owner doesn’t do anything you couldn’t do by dropping and recreating the materialized view. However, a superuser can alter ownership of any view anyway.)

ALTER MATERIALIZED VIEW 可用的语句子形式和动作是 ALTER TABLE 中可用的语句子形式和动作的子集,并且在用于物化视图时具有相同的含义。有关详细信息,请参阅 ALTER TABLE 的说明。

The statement subforms and actions available for ALTER MATERIALIZED VIEW are a subset of those available for ALTER TABLE, and have the same meaning when used for materialized views. See the descriptions for ALTER TABLE for details.

Parameters

  • name

    • The name (optionally schema-qualified) of an existing materialized view.

  • column_name

    • Name of a new or existing column.

  • extension_name

    • The name of the extension that the materialized view is to depend on (or no longer dependent on, if NO is specified). A materialized view that’s marked as dependent on an extension is automatically dropped when the extension is dropped.

  • new_column_name

    • New name for an existing column.

  • new_owner

    • The user name of the new owner of the materialized view.

  • new_name

    • The new name for the materialized view.

  • new_schema

    • The new schema for the materialized view.

Examples

要将物化视图 foo 重命名为 bar

To rename the materialized view foo to bar:

ALTER MATERIALIZED VIEW foo RENAME TO bar;

Compatibility

ALTER MATERIALIZED VIEW 是 PostgreSQL 扩展。

ALTER MATERIALIZED VIEW is a PostgreSQL extension.