PostgreSQL 9.3: ALTER VIEW AS

5

我正在使用PostgreSQL 9.3版本。

由于表格已经改变(添加了更多的列),我需要修改视图。

好吧!我尝试了以下脚本,但对我没有用:

ALTER VIEW View1 AS SELECT * FROM Table1;

出现错误:

Syntax error near 'AS'
2个回答

15

你需要删除并重新创建这个视图:

DROP VIEW IF EXISTS View1;
CREATE VIEW View1 AS SELECT * FROM Table1;
如果您只是添加列,而不重命名已经存在的列或更改其类型,则可以使用CREATE OR REPLACE而无需首先DROP VIEW,但明确删除并重新创建视图更加安全。如果仅使用CREATE OR REPLACE,则如果更改了列的顺序、名称或类型,将会抛出错误。

3
我发现了这样的代码并修复了问题。
CREATE OR REPLACE VIEW view_name AS
SELECT a_column FROM a_table;

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接