如何从视图中删除列

Ant*_*ony 9 sql oracle oracle11g

我正在尝试从视图中删除列但似乎无法执行此操作,因为显然缺少关键字.有人能告诉我我错过了什么吗?

ALTER VIEW REORDERINFO DROP COLUMN name;
Run Code Online (Sandbox Code Playgroud)

再试一次后,我得到了以下内容:

SQL> ALTER VIEW REORDERINFO
AS SELECT isbn,title, phone
FROM books JOIN publisher USING (pubid);
Run Code Online (Sandbox Code Playgroud)

第2行的错误:ORA-00922:缺少或无效选项

hol*_*hol 11

您不能ALTER VIEW用于删除列.要重新创建没有列的视图,请使用CREATE OR REPLACE VIEW.

Oracle文档:

使用该ALTER VIEW语句显式重新编译无效的视图或修改视图约束.

在此输入图像描述

来源:Oracle®数据库
SQL语言参考
11g第2版(11.2)
E26088-01

  • 我想这意味着我可以再写我的答案了:-)。这是[ALTER VIEW文档]的链接(http://docs.oracle.com/cd/E11882_01/server.112/e26088/statements_4004.htm#SQLRF01104) (3认同)