易截截图软件、单文件、免安装、纯绿色、仅160KB

ORACLE物化视图 Query Rewrite的一般理解之四


   可以看到MVIEW在Query Rewrite中的重要性, 要在实际应用中使用, 就得知道它的很多方面, 其中刷新是最主要的:
1, MVIEW日志的建立
2, 汇总型的MIVEW的刷新
3, JOIN类型的MVIEW的刷新
4, 更复杂的MVIEW的刷新
5, 分区时的MVIEW的刷新
   在这儿我们主要讨论的是如何实现Fast刷新, 否则没有多少意议的. 我们一点一点来看:
   1, 要实现增量刷新, 必须在MVIEW引的的表上创建MVIEW Log, 我们主要来说一下几个选项
WITH ROWID/PRIMARY KEY : 在MVIEW Log中记录ROWID或主键以反映改更过的记录, 对于一般表我推荐用WITH ROWID, 对于IOT, 则请用PRIMARY KEY.
(column list): 为了让MVIEW LOG变得小一点你可以只包括进在MVIEW的SQL中引用的字段, Oracle用表来实现MVIEW LOG在更新频繁的表上, MVIEW LOG可能会变得很大. 在指定了WITH PRIMARY KEY时, 主键的列已经包括了, 因此在column list中就不要再写进去了.
WITH SEQUENCE: 用于记录修改发生的顺序, 如果没有对基表的DELETE操作则可以不用加这个选项.
INCLUDING NEW VALUES: 主要用于在汇总型的MVIEW时, 同时记录字段的旧值和新值以实现快速刷新, 默认是EXCLUDING NEW VALUES, 这时如需要当前值, Oracle需要到表中去查询.
   2, 汇总型的MIVEW的刷新, Oracle支持分组函数及一部份的分析函数的增量刷新.
将count(*)加到MVIEW的SQL, 如果有SUM(*)和COUNT(*)存在就可以实现增量刷新.
  3, JOIN类型的MVIEW的刷新
在Join的MVIEW时将基表的ROWID都加到MVIEW中, 如TA(A,B)和TB(C,D), 则MVIEW时可以写为, SELECT TA.ROWID TA_ROWID,TB.ROWID TB_ROWID, <<collist>> from TA,TB WHERE ...
  4, 复杂类型的MVIEW的刷新
可以考虑转换成级联的MVIEW, 如先建JOIN的MVIEW, 再建SUMMARY的MVIEW
  5, 分区时的MVIEW的刷新
用DBMS_MVIEW.MARKER(表名)来获得分区ID, 并加到MIVEW的SELECT列表中, 这样可以实现分区表的增量刷新, 请自已做实验来测试.
   关于这部份的解释, 在<<Data Warehouse Guide>>这一个文档中有很详细的解绍, 我也正在看, 看完后会更新的.


相关文档:

oracle中字符串(摘抄)

关于Oracle中字符串的说明
字符串
Oracle中有四种基本的字符串类型,分别是char、varchar2、nchar和nvarchar2。在Oracle中,所有串都以同样的格式存储。在数据块有一个1~3字节的长度字段,其后才是数据,如果数据位NULL,长度字段则表示为一个单字节值0xFF.
如果串的长度小于或等于250(0x01~0xFA),Oracle会使用1个字节来 ......

ORACLE中的各种数据类型详细的介绍

当你在数据库中创建数据表的时候,你需要定义表中所有字段的类型。ORACLE有许多种数据类型以满足你的需要。数据类型大约分为:character, number, date, LOB, 和RAW等类型。虽然ORACLE8i也允许你自定义数据类型,但是它们是最基本的数据类型。在下面的文章中你将了解到他们在oracle 中的用法、限制以及允许值。
  
   ......

Oracle9中XML SQL Utility技术指导(java)

■     开发前要求配置
■     Select XML格式数据
■     Insert XML格式数据
■     Updata XML格式数据
■     Delete XML格式数据
开发前要求配置
必须安装Oracle客户端
把Classpath指向
classes111.zip ......

oracle触发redo写的四个条件

当LGWR处于空闲状态时,它依赖于rdbms rpc message等待事件,处于休眠状态,直到三秒时间到,如果这个时候LGWR发现有Redo信息需要写出的话,那么LGWR将执行写的操作,log file parallel write等待事件将会出现。
  总结一下Redo写的触发条件:
  1,每三秒钟超时(timeout):
当LGWR处于空闲状态时,它依赖于rdbms r ......

ORACLE ORA 00132 ORA 00214

oracle断电后重启出现的问题已经解决方法
一、ORA-00132 
问题描述 :syntax error or unresolved network name ''
第1步:复制一份pfile参数文件(注意:oracle中的pfile指的就是init<sid>.ora文件)
$sqlplus '/as sysdba';
SQL> create pfile from spfile='/u01/oracle/product/10.2.0/db_1/dbs/spf ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号