`
Evanxu#
  • 浏览: 55227 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

oracle 物化视图语法分析【转】 收藏

阅读更多
  oracle 物化视图语法分析【转】 收藏


  物化视图对于前台数据库使用者来说如同一个实际的表,具有和一般表相同的如select等操作 ,而 其实际上是一个视图,一个由系统实现定期刷新其数据的视图(具体刷新时间在定义物化视图的时候已有定义),使用物化视图更可以实现视图的所有功能,而物化视图却不是在使用时才读取,大大提高了读取速度 , 特别适用抽取大数据量表某些信息以及数据链连接表使用,但是物化视图占用数据库磁盘空间 。具体语法如下:

create  materialized  view   [ view_name ]
refresh  [ fast|complete|force ]
[
on [commit|demand ]   |
start  with  (start_time)  next  (next_time)
]
as
{创建物化视图用的查询语句}

具体实例如下:

CREATE MATERIALIZED VIEW an_user_base_file_no_charge
              REFRESHCOMPLETE START WITH SYSDATE  
            NEXT  TRUNC(SYSDATE+29)+5.5/24    --红色 部分表示从指定的时间开始,每隔一段时间(由next指定)就刷新一次
AS
select distinct user_no
from cw_arrearage t
where (t.mon = dbms_tianjin.getLastMonth or
        t.mon = add_months(dbms_tianjin.getLastMonth, -1))

删除物化视图:

drop materialized view an_user_base_file_no_charge;




以上是Oracle创建物化视图(Materialized View,以下简称MV)时的常用语法,各参数的含义如下:

1.refresh [fast|complete|force] 视图刷新的方式:
fast: 增量刷新.假设前一次刷新的时间为t1,那么使用fast模式刷新物化视图时,只向视图中添加t1到当前时间段内,主表变化过的数据.为了记录这种变化, 建立增量刷新物化视图还需要一个物化视图日志表。create materialized view log on (主表名)。
complete: 全部刷新。相当于重新执行一次创建视图的查询语句。
force: 这是默认的数据刷新方式。当可以使用fast模式时,数据刷新将采用fast方式;否则使用complete方式。

2.MV数据刷新的时间:
on demand:在用户需要刷新的时候刷新,这里就要求用户自己动手去刷新数据了(也可以使用job定时刷新)
on commit:当主表中有数据提交的时候,立即刷新MV中的数据;
start ……:从指定的时间开始,每隔一段时间(由next指定)就刷新一次;

手动刷新物化视图:

begin
      dbms_mview.refresh(TAB=>'an_user_base_file_no_charge ',
                                        METHOD=>'COMPLETE',
                                        PARALLELISM=>8);   --PARALLELISM并行控制参数
end;
/

增量刷新就不需要使用什么并行了,通常情况下,是没有那个必要的。

begin
      dbms_mview.refresh(TAB=>'an_user_base_file_no_charge' ,
                                        METHOD=>'FAST',
                                        PARALLELISM=>1);
end;
/


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/webajax/archive/2010/12/09/6066112.aspx
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    Oracle物化视图应用详解

    Oracle物化视图是一种数据库对象,它存储了查询结果,以提供快速的数据访问,特别适合于需要频繁查询但计算过程复杂或涉及大量数据连接的场景。物化视图的使用可以显著提高查询性能,因为它避免了每次查询时的计算...

    Oracle物化视图增量刷新的应用研究.pdf

    "Oracle 物化视图增量刷新的应用研究" Oracle 物化视图是 Oracle 公司提供的一种新技术,可以解决很多普通逻辑视图无法完成的功能。物化视图操作简单,支持增量刷新及全量刷新,可以支持复杂的表连接、聚合函数等...

    Oracle物化视图介绍

    ### Oracle物化视图介绍及应用详解 #### 一、物化视图概念与作用 在Oracle数据库中,物化视图(Materialized View, MV)是一种预计算并存储的查询结果,它能够显著提高复杂查询的性能。通常情况下,复杂的查询涉及到...

    oralce创建物化视图

    oralce创建物化视图,基本语法,基本操作

    OCM考试实验笔记之一_物化视图.pdf

    在本实验笔记中,主要探讨了物化视图(Materialized Views)这一重要的数据库特性,它是数据仓库和OLAP(在线分析处理)系统中的关键组件,用于提高查询性能和数据一致性。 物化视图是一种预先计算并存储的查询结果...

    oracle视图详解

    Oracle 视图详解 Oracle 视图(View)是一种逻辑表,基于一个或多个实际表...在 Oracle 中,还有一种视图:物化视图(MATERIALIZED VIEW),也称实体化视图,快照(8i 以前的说法),它是含有数据的,占用存储空间。

    ORACLE和SQL语法区别归纳

    - Oracle是甲骨文公司开发的关系数据库管理系统,它遵循SQL标准,但添加了许多自己的扩展和优化,如PL/SQL编程语言、物化视图、分区表等。 2. **数据类型的区别** - SQL标准定义了基本的数据类型,如INT、VARCHAR...

    自己总结的数据库oracle视图用法

    在Oracle中,还可以创建物化视图,这种视图会预先计算并存储结果,适用于需要定期更新且查询频繁的数据。物化视图的刷新可以是手动的,也可以设置为自动定时刷新,以保持数据的实时性。 总的来说,Oracle视图是...

    Oracle语法指南.zip

    5. **物化视图**:预先计算并存储视图的结果,提高查询速度。 6. **触发器**:在特定数据库事件发生时自动执行的PL/SQL代码。 7. **数据库链接**:在不同Oracle实例间进行通信和数据共享。 8. **性能优化**:使用...

    oracle数据快照

    - **创建物化视图日志的基本语法**: ```sql CREATE MATERIALIZED VIEW LOG ON table_name WITH PRIMARY KEY, INCLUDING NEW VALUES; ``` 其中: - `table_name` 是要创建物化视图日志的表名。 - `WITH ...

    Mysql转oracle工具

    Oracle通常提供更高级的性能优化选项,如物化视图、索引组织表等,可能需要在转换后进行调整。 10. **工具使用**: "mysqltooracle_cn"这个工具可能包含了自动化的转换功能,它能帮助解析MySQL的DDL语句并生成...

    oracle view

    Oracle物化视图是数据库管理中的一个重要概念,它是一个包含了查询结果的数据库对象,它可以是远程数据的本地副本,或者用于生成基于数据表的汇总表。物化视图的主要作用在于提供数据的本地缓存,优化查询性能,尤其...

    oracle10g语法大全

    Oracle 10g是一款强大的关系型数据库管理系统,其语法丰富且功能强大,是许多企业和组织的核心数据存储解决方案。本资料集“Oracle 10g语法大全”旨在为数据库管理员(DBA)、开发人员以及对Oracle数据库感兴趣的...

    oracle全面语法-扩展附件

    4. **SQL性能优化**:在"实战开发"部分,可能涵盖如何通过索引、物化视图、分区、绑定变量等方式提升查询速度。优化查询是数据库管理员的日常工作,有效的优化策略可以显著提升系统性能。 5. **存储过程和触发器**...

    19.Oracle视图1

    2. **物化视图**:物化视图是存储了查询结果的物理表,常用于数据仓库和OLAP系统中,以提高查询性能,但使用并不广泛。 总之,Oracle视图作为数据访问的窗口,提供了数据安全、简化查询、权限管理和业务逻辑封装等...

    oracle和SQL的语法区别

    综上所述,Oracle和SQL Server在基本语法上有很多相似之处,但在函数、索引、视图、事务处理和权限管理等方面存在显著差异。理解这些差异对于进行数据库移植和编写跨平台代码至关重要。在实际操作中,开发者应根据...

    oracle+SQL语法大全

    Oracle SQL是一种用于管理和操作Oracle数据库的强大查询语言。它在数据管理、数据分析以及应用程序开发中扮演...在实践中,你还可以探索更多高级特性和技术,如物化视图、分区表、索引组织表等,进一步提升数据库性能。

    Oracle讲义 SQL语法规则

    3. Materialized Views:物化视图,预先计算好的视图,用于快速查询。 通过深入学习和实践这些Oracle SQL语法规则,你可以更有效地管理和操作数据库,提升数据库管理能力。记得理论结合实际,多动手练习,才能更好...

    KingbaseESV6.1与ORACLE对比.doc

    - **视图**:逻辑数据视图,KingbaseES和Oracle都能创建,但Oracle可能提供更复杂的视图操作,如物化视图。 - **Sequence(序列号发生器)**:两者都有用于生成唯一标识的序列,Oracle的序列功能更为强大,可...

    Oracle_create_tablespace语法详解.docx

    Logging 子句用于声明这个表空间上所有的用户对象的日志属性,包括表,索引,分区,物化视图,物化视图上的索引,分区。 七、FORCE LOGGING 设置 FORCE LOGGING 设置用于强制表空间进入日志模式。此时,系统将记录...

Global site tag (gtag.js) - Google Analytics