Database Reference
In-Depth Information
Date's Zero-Rule
According to [Date, 1990], a system qualifies as a
relational
,
database,
and
management
system (highlights are deliberate) iff it uses its
relational
facilities exclusively to
manage
its
database
.
This is a loaded statement that will become clearer as you progress through the
course. For instance, after studying chapters 12 - 14, you will have a better appreciation
of what it means to use the relation facilities of a database to manage the said database.
Moreover, it is not sufficient to take a system that is fundamentally not relational, add an
interface that facilitates PROJECT, JOIN, SELECT (only), and then claim that the system is
relational. Instead, everything must be relational
—
the view mechanism, the catalog, the
structure, the integrity features, and the operations supported.
Codd's Twelve Rules
Rule 1: The Information Rule:
All information in the database must be represented as
relational tables, subject to established integrity constraints, structural and manipulation
features (mentioned earlier).
Rule 2: The Guaranteed Access Rule:
All data stored in the database must be
logically addressable by specifying the relation, the related attribute(s), and the primary-
key-value.
Rule 3: Systematic Treatment of Null Values:
The DBMS is required to have a
consistent way of representing and treating so-called “missing information” that is
different from regular data values, and independent of the data types supported.
Rule 4: The Active Online Catalog Rule:
The system should host a comprehensive
relational catalog that is accessible to authorized users via the regular query language.
Chapter 14 will provide more clarification on the importance of the system catalog.
Rule 5: Comprehensive Data Sub-Language:
The system must support at least one
relational language that meets the following criteria:
a.
has a linear syntax;
b.
can be used both interactively and within application
programs;
c.
provides adequate support of DDL, DML, and DCL
operations.
This requirement is adequately fulfilled in SQL, the universal standard database
language that will be covered in chapters 10 - 14.
Rule 6: The View Updating Rule:
All views that are theoretically updateable must be
updateable by the system (this will be clarified in chapter 13).
Rule 7: High-level Insert, Update, and Deletion:
The system must support set-wise
DML operations such as INSERT, UPDATE, and DELETE operations. Chapter 11 will
demonstrate that SQL fulfills this requirement.