当前位置:首页 > 世界杯欧洲名额

oracle 修改视图命令,11.2.3 修改/删除视图

admin 2025-08-26 19:53:43 3930

11.2.3 修改/删除视图

在创建了关系视图vw_employees之后,可以对其进行修改和删除操作。

1.修改视图

修改视图的过程即为重新定义视图的过程。可以通过首先删除视图,然后再次创建实现。另外,Oralce也提供了一个专门的命令--create or replace view来重新定义视图。其语法形式如下所示。create or replace view 视图名称 as 查询语句|关系运算

【示例11-6】 假设现在需要为视图vw_employees添加新列employee_age,那么可以利用如下SQL语句。create or replace view vw_employees as

select employee_id, employee_name, employee_position,

employee_age from employees

其中create or replace view vw_employees用于创建或者替换视图vw_employees的定义;as之后的查询语句为视图的新定义,在新定义中增加了列employee_age。

注意:create or replace view命令的作用。当同名视图不存在时,将执行创建命令;否则将执行替换命令。

可以通过查询视图内容验证是否成功执行了视图重定义,SQL语句如下所示。SQL>select * from vw_employees;

EMPLOYEE_ID EMPLOYEE_NAME EMPLOYEE_POSITION EMPLOYEE_AGE

----------- ------------- ----------------- ------------

1 王晓 开发经理 35

2 钟小平 高级工程师 30

3 刘俊 高级工程师 25

4 王龙 工程师 24

5 钟文 工程师 24

6 张三 测试工程师

6 rows selected

在查询结果中可以获得新列employee_age,代表视图的重定义已经成功执行。

2.删除视图

删除视图的动作实际为删除数据库中的对象操作,因此该操作为DML操作。如同删除数据表对象,删除视图也应该使用drop命令,其语法形式如下所示。drop view view_name

其中drop view向数据库发送删除视图命令;view_name则指定了要删除的视图名称。

【示例11-7】 如需删除视图vw_employees,则可以利用如下SQL语句。SQL>drop view vw_employees;

View dropped

可以通过查询视图内容来验证vw_employees是否成功删除。SQL>select * from vw_employees;

select * from vw_employees

ORA-00942: table or view does not exist

ORA-00942: table or view does not exist为Oracle抛出的错误,表示表或视图不存在,印证了利用drop命令已经成功删除了视图vw_employees。

【责任编辑:云霞 TEL:(010)68476606】

点赞 0