千家信息网

Oracle物化视图怎么用

发表于:2024-12-04 作者:千家信息网编辑
千家信息网最后更新 2024年12月04日,这篇文章主要介绍了Oracle物化视图怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Oracle物化视图的用法与总结物化视图(m
千家信息网最后更新 2024年12月04日Oracle物化视图怎么用

这篇文章主要介绍了Oracle物化视图怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

Oracle物化视图的用法与总结

物化视图(material view)是什么?

物化视图是包括一个查询结果的数据库对象,它是远程数据的的本地副本,或者用来生成基于数据表求和的汇总表。

物化视图存储基于远程表的数据,也可以称为快照(类似于MSSQL Server中的snapshot,静态快照)。对于复制,物化视图允许你在本地维护远程数据的副本,这些副本是只读的。

如果你想修改本地副本,必须用高级复制的功能。当你想从一个表或视图中抽取数据时,你可以用从物化视图中抽取。

对于数据仓库,创建的物化视图通常情况下是聚合视图,单一表聚合视图和连接视图。(这个是基于本地的基表或者视图的聚合)。

物化视图,说白了,就是物理表,只不过这张表通过oracle的内部机制可以定期更新,将一些大的耗时的表连接用物化视图实现,会提高查询的效率。当然要打开查询重写选项;

Material View的主要作用

1. 实现两个数据库之间的数据同步,可以存在时间差。

2. 如果是远程链接数据库的场景时,提高查询速度。

(由于查询逻辑复杂,数据量比较大,导致每次查询视图的时候,查询速度慢,效率低下)

物化视图的刷新方式和方法

1. 刷新的方式

Fast

Complete

Fource

2. 刷新的方法

DBMS_REFRESH.Refresh

DBMS_MVIEW.Refresh

EXEC DBMS_MVIEW.refresh('BXJ_OBJECTS_MV_T1','C');EXEC DBMS_REFRESH.refresh('REP_MVIEWGROUP');  物化视图的刷新方式和方法  (1).在源数据库建立mview log日志文件

create materialized view log on w_1 ;

----注:(TEST为表名或者视图名,关于视图上建立物化视图,见基于视图的物化视图

----创建物化视图语句:

(2).在统计数据建立materializad view 语法

Create materialized view MV_TEST

----MVTEST为物化视图名

Build immediate

----创建时生成数据对应的是build deferred

Refresh fast

----增量刷新

On commit

----在基表有更新时提交,这里该句对视图无效

With rowid

----这里创建基于rowid的物化视图,对应的是 primary key

As

Select * from TEST;

----生成物化视图数据语句

或者

    CREATE MATERIALIZED VIEW MV_TableName        BUILD IMMEDIATE      --创建时立即刷新         REFRESH FORCE        --如果可以快速刷新则进行快速刷新,否则完全刷新         ON DEMAND            --刷新方式         START WITH SYSDATE   --第一次刷新时间         NEXT  SYSDATE+1/12   --刷新时间间隔         AS SELECT 1 id 'A' name FROM dual;

(3).调用时进行刷新

dbms_refresh.refresh('W_1')

创建物化视图 CREATE MATERIALIZED VIEW bxj_objects_mv_t1 REFRESH FAST AS SELECT * FROM apps.bxj_objects_t1;CREATE MATERIALIZED VIEW bxj_objects_mv_t2 REFRESH FORCE AS SELECT * FROM bxj_objects_t2;CREATE MATERIALIZED VIEW bxj_objects_mv_t3 REFRESH COMPLETE AS SELECT * FROM bxj_objects_t3; ON DEMAND和ON COMMIT物化视图的区别 ON DEMAND和ON COMMIT物化视图的区别在于其刷新方法的不同,ON DEMAND顾名思义,仅在该物化视图"需要"被刷新了,才进行刷新(REFRESH),即更新物化视图,以保证和基表数据的一致性;而ON COMMIT是说,一旦基表有了COMMIT,即事务提交,则立刻刷新,立刻更新物化视图,使得数据和基表一致。 物化视图是物理表的么? 1) 物化视图在某种意义上说就是一个物理表(但并不仅仅是一个物理表),这通过其可以被user_tables查询出来,而得到佐证;2) 物化视图也是一种段(segment),所以其有自己的物理存储属性;3) 物化视图会占用数据库磁盘空间,这点从user_segment的查询结果,可以得到佐证。

查询物化视图上次刷新时间

SELECT last_refresh_date      FROM user_mviews     WHERE mview_name = 'MV_TABLENAME';

感谢你能够认真阅读完这篇文章,希望小编分享的"Oracle物化视图怎么用"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

视图 数据 查询 数据库 物理 副本 方式 方法 时间 篇文章 更新 生成 一致 佐证 图名 就是 快照 效率 结果 语句 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 介绍网络安全 数据 当前国内外网络安全的现状 网络安全知识安全简介 公有云数据库监控 数据库更新时间自动 易航互联网物流科技 二手服务器和组装服务器 储层地质数据库构建 网络安全青年日手抄报内容 大话2经典版有没有免费服务器 求教面试技巧我是学软件开发的 苏州联想服务器回收价 合肥费用管理软件开发 达梦数据库恢复报文件打开出错 网络安全对会计的影响 国服坦克服务器现状 崇明区智能化网络技术产业 小学网络安全小卫士演讲 衢州品牌网络技术有哪些 农行k宝驱动连接服务器失败 合肥讯思网络技术有限公司 浪潮服务器共享管理口 sci数据库怎么查找文献 喀什软件开发优化价格 数据库的封装指什么 易语言如何显示数据库文件名 本科生软件开发开发开题报告 浪潮erp服务器有啸叫报警 数据库应用技术面试 数据库表的创建与查询步骤
0