Information Modeling and Relational Databases: From Conceptual Analysis to Logical Design

Chapter 7: Other Constraints and Final Checks

7.1 CSDP Step 7: Other Constraints and Final Checks

In previous steps of the CSDP, we verbalized familiar examples in terms of elementary facts, sketched the fact types on a diagram, then added various constraints and derivation rules. Most applications include uniqueness, mandatory role, value, set-comparison, and subtyping constraints. Though less common, other kinds of constraints may also apply. Some of these have graphic notations. The rest are specified textually rather than on the diagram. Once all the constraints are specified, some final checks can be made to help ensure our information model is consistent and free of redundancy. This concludes the basic conceptual schema design procedure.

CSDP step 7: Add other constraints, and perform final checks.

This chapter deals with step 7 in detail. The next two sections discuss some important graphic constraints (occurrence frequencies and ring constraints). Then some other graphic constraints are briefly introduced (e.g., join constraints, relative closure). After that, we consider some constraints that must be declared textually. Finally we examine some ways of checking that the schema is consistent and redundancy free.

7.2 Occurrence Frequencies

Let n be some positive integer. To indicate that each entry in a fact column must occur there exactly n times, the number n is written beside the role (see Figure 7.1). This is an example of an occurrence frequency constraint. If n = 1, this is equivalent to a uniqueness constraint in this case the usual arrow-tipped bar notation for uniqueness should be used instead of...

UNLIMITED FREE
ACCESS
TO THE WORLD'S BEST IDEAS

SUBMIT
Already a GlobalSpec user? Log in.

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.

Customize Your GlobalSpec Experience

Category: Project Management Services
Finish!
Privacy Policy

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.