视图(view)定义:
视图是一张虚表,不占用物理空间(指的是图中数据不占用,视图本身定义语句还是存在硬盘中)
视图是从一个或多个实际表中获得的,这些表的数据存放在数据库中。那些用于产生视图的表叫做该视图的基表。一个视图也可以从另一个视图中产生。
视图的定义存在数据库中,与此定义相关的数据并没有再存一份于数据库中。通过视图看到的数据存放在基表中。
视图看上去非常像数据库的物理表,对它的操作同任何其他的表(增、删、改、查)。当通过修改视图修改数据时,实际是在改变基表中的数据;相反的,基表中数据的改变也会自动反应到由基表产生的视图中。由于逻辑上的原因,有些Oracle视图可以修改对应的基表,有些则不能(仅能查询)。
视图的作用:将一些查询复杂的SQL语句变为视图,便于查询。 视图的创建:语法:在CREATE VIEW语句后加入子查询。 举个栗子--> 查询视图时,不需要再写完全的查询语句,只需要简单的写上从视图中查询的语句就可以了 视图也可以从视图中产生: 修改视图的数据,就是修改基表的数据: 视图的删除:当视图不在需要时,用“drop viow”撤销,删掉视图不会导致数据丢失(不会影响基表的数据),因为视图是基于数据库的表之上的一个查询定义(虚表)视图的优点:可以使某些重复出现SQL语句变得更为简单 视图的缺点:1.如果修改基表的结构,视图失效 2.增加数据库的维护成本 3.视图会被覆盖掉 4.一般情况下,不要对视图进行DML操作