codecamp

PostgreSQL ALTER MATERIALIZED VIEW

ALTER MATERIALIZED VIEW — 更改一个物化视图的定义

大纲

ALTER MATERIALIZED VIEW [ IF EXISTS ] name   action [, ... ]ALTER MATERIALIZED VIEW name    DEPENDS ON EXTENSION extension_nameALTER 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 ] 其中 action是下列之一: ALTER [ COLUMN ] column_name SET STATISTICS integerALTER [ COLUMN ] column_name SET ( attribute_option = value [, ... ] )
ALTER [ COLUMN ] column_name RESET ( attribute_option [, ... ] ) ALTER [ COLUMN ] column_name SET STORAGE { PLAIN | EXTERNAL | EXTENDED | MAIN } CLUSTER ON index_name SET 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特权(这些限制强制修改拥有者不 能做一些通过删除和重建该物化视图做不到的事情。不过,一个超级用户怎么都能更改 任何视图的所有权。)。

可用于ALTER MATERIALIZED VIEW的语句形式和动作是 ALTER TABLE的一个子集,并且在用于物化视图时具有相 同的含义。详见ALTER TABLE的描述。

参数

name

一个现有物化视图的名称(可以是模式限定的)。

column_name

一个新的或者现有的列的名称。

extension_name

该物化视图所依赖的扩展的名称(如果指定了 NO ,则不再依赖)。 删除扩展时,会自动删除标记为依赖于扩展的实例化视图。

new_column_name

一个现有列的新名称。

new_owner

该物化视图的新拥有者的用户名。

new_name

该物化视图的新名称。

new_schema

该物化视图的新模式。

示例

把物化视图foo重命名为 bar

ALTER MATERIALIZED VIEW foo RENAME TO bar;

兼容性

ALTER MATERIALIZED VIEW是一种 PostgreSQL扩展。


PostgreSQL ALTER LARGE OBJECT
PostgreSQL ALTER OPERATOR
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

PostgreSQL SQL语言

PostgreSQL 服务器管理

PostgreSQL 客户端接口

PostgreSQL 服务器编程

PostgreSQL 参考

PostgreSQL 内部

PostgreSQL 附录

PostgreSQL 参考书目

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }