変更ビューの要件と制約

提供: InterBase

変更ビュー へ戻る


遅延制約のチェック

ソース データベース内の変更のシーケンスまたは順番は、変更ビュー 機能によってキャプチャされません。 この文は異なるテーブルにわたる変更に関して、単一テーブル内での変更と同様に、適用されます。 疑似列 RECORD_VERSION または TRANSACTION_ID を公開し、その列上の変更データ結果セットをソートすることで、このシーケンスを概算することは可能です。 しかしながら、あらゆる使用ケースにおいて、変更の正しい順序を保証するものではありません。 変更の順番は、1 つまたは複数のサブスクリプションを同期メカニズムで使用する場合に、制約チェックを実施する上で重要です。 InterBase は、IMMEDIATE 制約チェックのみサポートしており、サブスクリプションの変更が、さまざまな制約が整備されている対象データベースに提供されるよう、DEFERRED 制約チェックをサポートすることも必要な場合があります。

トリガの非活性化

InterBase により、名前付きトリガは、非活性化に宣言することができます。 サブスクライブされた変更が対象データベースに適用される場合、アクションの発動は抑制されるべきかもしれません。これはアプリケーションによって変わる判断事項です。 ただし、トリガを非活性化する範囲は、単一のデータベース セッションに限定されるべきです。 InterBase は、トリガを、そのデータベースに対するすべてのデータベース セッションにわたって、非活性化させます。 オペレーションの制限された範囲に対するものと同様の要件が、DEFERRED 制約に対しても当てはまります(それが実装されている場合)。

次は: