We describe the design and implementation of a constraint management facility for our active object-oriented database system called Jasmine/A. The facility includes integrity constraints, events/triggers, and constraint rules. The facility enables the user to handle both interobject and intraobject constraints, to define both primitive and composite events, and to populate databases with values satisfying specified constraints. We have taken a multi-paradigm approach to constraint management. All the paradigms are integrated into object-oriented databases. We describe the semantics of the constraint management facility by extending the conventional terms of transactions and consistency. Evaluation is done efficiently using page buffers for constraints associated with set-oricntcd access and object buffers for those associated with individual object access. Users are also able to control the constraint evaluation.
展开▼