PostgreSQL 9.3:ALTER VIEW AS

时间:2015-02-23 06:29:41

标签: postgresql postgresql-9.3

我正在使用PostgreSQL 9.3版本。

我需要更改视图,因为表已被更改(添加了更多列)。

嘛!我尝试过以下不适合我的脚本:

ALTER VIEW View1 AS SELECT * FROM Table1;

出现错误:

Syntax error near 'AS'

2 个答案:

答案 0 :(得分:4)

您必须删除并重新创建视图:

DROP VIEW IF EXISTS View1;
CREATE VIEW View1 AS SELECT * FROM Table1;

如果您只添加了列,没有重命名已存在的列或更改类型,则可以先使用CREATE OR REPLACE而不使用DROP VIEW,但显式删除更安全,而不是重新创建视图。

如果更改了列的顺序,名称或类型,则仅使用CREATE OR REPLACE会抛出错误。

答案 1 :(得分:1)

我找到了这样的代码并解决了问题

CREATE OR REPLACE VIEW view_name AS
SELECT a_column FROM a_table;