1

If I have table T with 10 columns and create materialized view log with only 3 of them as well as materialized view with those 3, why when I updated ANY column in the table (besides those in the log) the record is inserted into MLOG$_T ? Is there a way to avoid?

Thanks

4

1 回答 1

2

不,你无法避免。日志的主要目的是识别已更改的行,而不是更改的数据本身(尽管您也可以将其包含在日志中)。维护日志的过程对可能创建的将使用日志的视图一无所知,因此它必须为表中的任何更改维护日志。

就是这样:假设您稍后在使用其他列的同一个表上创建另一个物化视图。如果日志要有用,它还必须维护有关这些行的更改的信息。毕竟,每个表只能创建一个日志。

于 2012-01-17T23:24:56.007 回答