Postgresql Postgres更改视图添加列

Postgresql Postgres更改视图添加列,postgresql,view,Postgresql,View,我想更改一个视图并在其中添加一个新列。我有: ALTER VIEW folders_contents AS SELECT files.id, files.name, files.filesize, files.updated, files.deleted, FROM files UNION ALL SELECT folders.id, folders.name, 0 AS filesize, folders.updated,

我想更改一个视图并在其中添加一个新列。我有:

ALTER VIEW folders_contents
AS
SELECT files.id,
    files.name,
    files.filesize,
    files.updated,
    files.deleted,
   FROM files
UNION ALL
 SELECT folders.id,
    folders.name,
    0 AS filesize,
    folders.updated,
    folders.deleted,
    FROM folders
  ORDER BY 8, 2
GO
问题在于它表明:

[Err]错误:“AS”处或附近出现语法错误

这是我第一次处理视图,我需要一些帮助:)

改用
创建或替换

在您的情况下,它将类似于:

CREATE OR REPLACE VIEW folders_contents
AS
SELECT files.id,
    files.name,
    files.filesize,
    files.updated,
    files.deleted,
   FROM files
UNION ALL
 SELECT folders.id,
    folders.name,
    0 AS filesize,
    folders.updated,
    folders.deleted,
    FROM folders
  ORDER BY 8, 2;

Postgres中没有
GO
。而且,
alterview
与您认为的不同,问题在于:[Err]错误:无法从视图中删除“folders\u contents”详细信息:包含UNION、INTERSECT或EXCEPT的视图不可自动更新。
CREATE OR REPLACE VIEW folders_contents
AS
SELECT files.id,
    files.name,
    files.filesize,
    files.updated,
    files.deleted,
   FROM files
UNION ALL
 SELECT folders.id,
    folders.name,
    0 AS filesize,
    folders.updated,
    folders.deleted,
    FROM folders
  ORDER BY 8, 2;