1

Oracle で具体化されたビューの変更を追跡する最良の方法は何ですか。トリガーが利用可能であり、CDC が具体化されたビューでは機能しないようです。賢い解決策はありますか?

ご協力いただきありがとうございます

ヨハネス

4

2 に答える 2

0

インクリメンタル リフレッシュされたマテリアライズド ビューで発生する変更を特定することについて話していると思います。MV が基になるテーブルと同じデータベースにある場合は、sysdate または systimestamp の値を格納する結果セットに、LAST_UPDATED などの追加の列を定義できます。MV が別のデータベースにある場合、問題が発生します。

実際、バグを修正してROWSCN(したがってROWSCNタイムスタンプ)をリモートMVに永続化できるようにするパッチをOracleから受け取ったので、これは分散MVのオプションになるはずです。rowscn タイムスタンプには +/- 3 秒のあいまいさがあるため、より高い精度が必要な場合は、独自のソリューションを展開することを検討しています。

于 2010-08-31T14:02:01.953 に答える
0

存在する場合は、MV ログ自体にクエリを実行できます。

http://www.sqlsnippets.com/en/topic-12878.html

于 2010-08-31T14:06:42.770 に答える