物化视图日志

时间:2021-01-30 19:48:02

物化视图日志限制:不能再临时表或视图上创建物化视图日志。

with从句

使用with来说明物化视图日志是否记录主键,rowid,object id,或是这些行标识符的组合当行改变的时候,你也可以增加sequence来提供更多排序的信息。也可以指定物化视图日志是否记录额外的列。

如果你没有指定这个从句,或是没有指定primary key,rowid,object id,数据库默认存储主键,如果你在创建的时候指定了object id或rowid,数据库不会存储主键。

object id指定了系统创建或是用户定义的对象标识符,每个被改变的行的对象标识都应该记录在日志中。只有在对象表上才可以指定object id。

primary key:改变的行主键应该放到物化视图日志中。

rowid,改变行的rowid放到视图日志中。

sequence:指定顺序指提供额外的顺序信息被添加到物化视图日志中。

column:指定想要添加到物化视图日志中的列。这些列通常是过滤列和连接列。

new values从句

new values从句来决定oracle是否在物化视图日志中保持新的和旧的值。

including保存新的和旧的值,如果表上有一个单表物化聚合视图,你想物化视图适合快速刷新,你就要指定including

excluding来取消在日志中记录新值,这个是默认的,可以使用这个来避免记录新值得开销。


删除物化视图日志

drop materialized view log on test;