首页 > 编程知识 正文

oracle数据库缺点,oracle物化视图优缺点

时间:2023-05-03 18:08:38 阅读:135962 作者:4785

视图的作用是什么

所谓视图(View ),是实际执行查询语句的结果,但由于该查询结果可以与数据表相似地使用,因此也称为“虚拟数据表”。 视图在操作上与数据表没有区别,但两者的区别本质上不同。 数据表实际上是保存记录的地方,但视图中没有保存任何记录,实际上是查询语句,显示的记录实际上来自数据表,可以根据多种查询的需要创建不同的视图。

创建视图是为了满足用户数据的各种显示要求,主要用于以下情况:

(1)限制用户只能访问特定表格中特定条件的内容,提高系统的安全性。

)隐藏表结构,创建多种形式的数个透视,满足不同用户的需求。

)3)将复杂的SELECT语句和表JION作为一个视图,为用户提供良好的界面。

)4)创建频繁使用的内联聚合运算的索引视图,以提高程序性能。

(5)创建分区视图调用远程数据,实现数据的分布式存储和查询,提高程序吞吐量。

视图是虚拟表,其内容由查询定义。 与实际表一样,视图包含一系列命名的列和行数据。 视图不作为数据值存储集存在于数据库中,除非是索引视图。 行和列数据是在定义视图查询引用的表以及引用视图时动态生成的。

在此处引用的基础表格中,视图的作用类似于筛选器。 可以从当前数据库中的一个或多个表或其他数据库中的其他视图中过滤定义视图。 分布式查询还可以用于定义使用多个异构源数据的视图。 例如,如果多台不同的服务器分别包含不同地区的数据,则需要将这些服务器上结构相似的数据组合在一起非常有用。

视图的优点和缺点

好处:

简单性。 视图不仅简化了用户对数据的理解,而且简化了操作。 可以将频繁使用的查询定义为视图,这样用户就不需要每次都指定所有条件来进行将来的操作。

安全性。 视图用户只能查询和修改他们可以查看的数据。 数据库中的其他数据不可见,也无法检索。 数据库批准命令允许每个用户将数据库检索限制为特定的数据库对象,但不允许对数据库的特定行和列进行检索。 视图允许用户限制为数据的不同子集。

逻辑数据的独立性。 视图允许APP应用程序和数据库表在某种程度上相互独立。 如果没有视图,则一定会在表中创建APP应用程序。 如果有视图,可以在视图上创建程序,并在视图中拆分程序和数据库表。 缺点主要如下。 性能: SQL Server必须将视图查询转换为基本表查询。 如果此视图由复杂的多表查询定义,则即使是视图的简单查询,SQL Server也需要很长时间才能将其转换为复杂的联接。

修改限制:如果用户尝试修改视图中的某些行,SQL Server必须将其转换为对基表中的某些行的修改。 这对于简单视图很有用,但可能无法修改为复杂视图。

因此,定义数据库对象时,不能在不选择视图的情况下进行定义。 必须权衡视图的利与弊,合理定义视图。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。