Oracle视图

一、视图(数据库对象)

把常用的复杂的sql定义为视图,需要查看数据时直接查看视图即可。

视图:虚表,是一个命令的查询,用于改变基表的数据的显示,简化查询;访问方式与表相同,同样可使用查询语句。

视图与表的关系是平等的,都是数据库的对象,视图的数据来源于表,视图本身,没有数据。

二、视图特点

简化查询(把复杂的SQL语句写成视图,别人直接用视图来查询即可,无须再写复杂的SQL语句)
隐藏数据(不是把整张表的数据给别人,而是通过指定字段弄成视图,把视图给别人,让别人查视图)

三、视图操作步骤

(一)赋予创建视图的权限

grant create view to 用户名;(管理员执行)
grant create view to scott;

(二)创建视图

create  [or replace:替换]  [force:强制]    视图名
as
...select语句...
--创建视图
CREATE VIEW show_cons_view
AS
--用于查询表名,字段名,约束名,约束类型‘如果是外键需要找出所引用的表,字段,约束名,约束类型
SELECT UCC.TABLE_NAME,
       UCC.COLUMN_NAME,
       UCC.CONSTRAINT_NAME,
       UC.STATUS,
       UC.CONSTRAINT_TYPE,
       UC.R_CONSTRAINT_NAME,
       UCC2.TABLE_NAME      R_TABLE_NAME,
       UCC2.COLUMN_NAME     R_COLUMN
  FROM USER_CONS_COLUMNS UCC
  LEFT JOIN USER_CONSTRAINTS UC
    ON UCC.CONSTRAINT_NAME = UC.CONSTRAINT_NAME
  LEFT JOIN USER_CONS_COLUMNS UCC2
    ON UC.R_CONSTRAINT_NAME = UCC2.CONSTRAINT_NAME;

*这里写图片描述*

(三)查看视图

select * from 视图名;
SELECT * FROM SHOW_CONS_VIEW;

这里写图片描述

四、修改视图

CREATE OR REPLACE VIEW 子句修改视图,修改视图其实就是把创建视图的语句重新写一遍,再写的时候增加需要修改的内容即可。

这里写图片描述

五、视图上执行DML操作

简单视图能进行DML(增删改)操作,实质就是通过视图对表的数据进行操作,视图实质没有数据。

删除和更新视图的值都是对视图展现的数据进行操作,而增加视图的数据直接插入到表中,对视图的展现数据没有影响,但是增加的数据必须符合表的规则。

1、删除视图数据

delete  from 视图名;

这里写图片描述

2、修改视图数据

update 视图名 set 列名=新值;

这里写图片描述

3、增加视图数据
insert into 视图名 values (值…)

这里写图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值