Change Views Requirements and Constraints

From InterBase
Jump to: navigation, search

Go Up to Change Views

Deferred Constraint Checking

The sequence or order of changes in the source database is not captured by the Change Views feature. This statement applies to changes across different tables as well as within a single table. It would be possible to approximate the sequence by exposing a pseudo-column RECORD_VERSION or TRANSACTION_ID and sorting a changed data result set on that column. However, this does not guarantee the correct order of changes in all use cases. The order of changes can be important for satisfying constraint checking when using one or more subscriptions as a sync mechanism. InterBase only supports IMMEDIATE constraint checking and it may be a requirement to support DEFERRED constraint checking to allow subscription changes to be applied to a destination database with various constraints in place.

Trigger Inactivation

InterBase allows a named trigger to be declared inactive. It may be that triggered actions should be prevented when subscribed changes are applied to a destination database; this is an application-dependent decision. But the scope of trigger inactivity as described here should be restricted to the single database session. InterBase makes the trigger inactive across all database sessions for the database. The same requirement of limited scope of operation would be true of DEFERRED constraint if it were to be implemented.

Advance To: