400-800-0824
info@ymatrix.cn
400-800-0824
info@ymatrix.cn
400-800-0824
info@ymatrix.cn
400-800-0824
info@ymatrix.cn
400-800-0824
info@ymatrix.cn
YMatrix 文档
关于 YMatrix
标准集群部署
数据写入
数据迁移
数据查询
运维监控
参考指南
工具指南
数据类型
存储引擎
执行引擎
流计算引擎
灾难恢复
系统配置参数
索引
扩展
SQL 参考
常见问题(FAQ)
更改一个视图的定义。
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
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。)
要执行此命令,您必须是视图的所有者。 要更改视图的架构,您还必须对新架构具有 CREATE 特权。 要更改所有者,您还必须是新拥有角色的直接或间接成员,并且该角色必须在视图的架构上具有 CREATE 特权。 这些限制迫使更改所有者不能执行删除和重新创建视图所无法做的任何事情。 但是,超级用户可以更改任何视图的所有权。
name
IF EXISTS
SET/DROP DEFAULT
new_owner
new_name
new_schema
SET ( view_option_name [= view_option_value] [, ... ] )
RESET ( view_option_name [, ... ] )
由于历史原因,ALTER TABLE 也可以与视图一起使用; 但是,视图允许的 ALTER TABLE 的唯一变体与上面显示的语句等效。
将视图 myview 重命名为 newview:Rename the view myview to newview:
ALTER VIEW myview RENAME TO newview;
要将视图 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 是 SQL 标准的 YMatrix 数据库扩展。