怎么使用视图在数据库中添加数据

怎么使用视图在数据库中添加数据,第1张

视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。

当建立视图时使用的表中的数据发生了改变后,视图中的数据也会发生相应的改变,视图本身是不能执行添加,删除,修改的!

如果要插入新数据的话,建议使用触发器,在视图相对应的各表中插入数据。视图中自然更新。

oracle视图创建/oracle多表创建视图问题

create or replace view emp_dept_ve

(empno,ename,job,hiredate,sal,dname,loc) AS

select e.empno,e.ename,e.job,e.hiredate,e.sal, d.dname,d.loc

from emp e

left join dept d on d.deptno = e.deptno

-- emp_dept_ve 是给视图取的视图名

第二种方法

create or replace view emp_dept_ve as

select e.empno,e.ename,e.job,e.hiredate,e.sal, d.dname,d.loc

from emp e

left join dept d on d.deptno = e.deptno

1、视图(View)创建使用,视图(View)实际上是一张或者多张表上的预定义查询,这些表称为基表。从视图中查询信息与从表中查询信息的方法完全相同。只需要简单的SELECT?FROM即可。

2、OR REPLACE:如果视图已经存在,则替换旧视图。

3、FORCE:即使基表不存在,也可以创建该视图,但是该视图不能正常使用,当基表创建成功后,视图才能正常使用。

4、NOFORCE:如果基表不存在,无法创建视图,该项是默认选项。

5、 WITH READ ONLY:默认可以通过视图对基表执行增删改 *** 作,但是有很多在基表上的限制(比如:基表中某列不能为空,但是该列没有出现在视图中,则不能通过视图执行insert *** 作),WITH READ ONLY说明视图是只读视图,不能通过该视图进行增删改 *** 作。现实开发中,基本上不通过视图对表中的数据进行增删改 *** 作。

视图具有以下优点:可以限制用户只能通过视图检索数据。这样就可以对最终用户屏蔽建表时底层的基表。可以将复杂的查询保存为视图。可以对最终用户屏蔽一定的复杂性。 限制某个视图只能访问基表中的部分列或者部分行的特定数据。这样可以实现一定的安全性。从多张基表中按一定的业务逻辑抽出用户关心的部分,形成一张虚拟表。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11875385.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存