ALTER_MATERIALIZED_VIEW(7pg14)
πΈ NAME πΈ
okay bestie, this is the ALTER MATERIALIZED VIEW(7) page, aka ALTER_MATERIALIZED_VIEW β and its whole thing is changing the definition of a materialized view. no cap, thatβs the name + job. π
β¨ 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 }
ALTER [ COLUMN ] column_name SET COMPRESSION compression_method
CLUSTER ON index_name
SET WITHOUT CLUSTER
SET TABLESPACE new_tablespace
SET ( storage_parameter [= value] [, ... ] )
RESET ( storage_parameter [, ... ] )
OWNER TO { new_owner | CURRENT_ROLE | CURRENT_USER | SESSION_USER }
π¦ DESCRIPTION π¦
okay so ALTER MATERIALIZED VIEW changes various auxiliary properties of an existing materialized view. thatβs the vibe. β¨
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 also be a direct or indirect member of the new owning role, and that role must have CREATE privilege on the materialized viewβs schema.
π permissions tea: 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. slay for the superuser, i guess.
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 an existing column. πextension_nameβ the name of the extension that the materialized view is to depend on (or no longer dependent on, ifNOis 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 πΈ
To rename the materialized view foo to bar, you literally run:
ALTER MATERIALIZED VIEW foo RENAME TO bar;
π COMPATIBILITY π
ALTER MATERIALIZED VIEW is a PostgreSQL extension. periodt. β¨
π SEE ALSO π
CREATE MATERIALIZED VIEW (CREATE_MATERIALIZED_VIEW(7))DROP MATERIALIZED VIEW (DROP_MATERIALIZED_VIEW(7))REFRESH MATERIALIZED VIEW (REFRESH_MATERIALIZED_VIEW(7))
π footer tea: PostgreSQL 14.24, dated 2026 β thatβs the source/version + date vibe, bye bestie! π
π¦ where this page comes from
- opensuse-leap 16.0: postgresql14 14.24-160000.1.1 Β· PostgreSQL
- opensuse-leap 16.0: postgresql14 14.24-160000.1.1 Β· PostgreSQL
- opensuse-leap 16.0: postgresql14 14.24-160000.1.1 Β· PostgreSQL
- opensuse-leap 16.0: postgresql14 14.24-160000.1.1 Β· PostgreSQL
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms