Tuesday, May 25, 2010

Codd's Rules for Relational Database Design

In 1985, database pioneer Dr. E.F. Codd laid out twelve rules of relational database design. These rules provide the theoretical (although sometimes not practical) underpinnings for modern database design. The rules may be summarized as follows:
  • All database management must take place using the relational database's innate functionality
  • All information in the database must be stored as values in a table
  • All database information must be accessible through the combination of a table name, primary key and column name.
  • The database must use NULL Values to indicate missing or unknown information
  • The database schema must be described using the relational database syntax
  • The database may support multiple languages, but it must support at least one language that provides full database functionality (e.g. SQL)
  • The system must be able to update all updatable views
  • The database must provide single-operation insert, update and delete functionality
  • Changes to the physical structure of the database must be transparent to applications and users.
  • Changes to the logical structure of the database must be transparent to applications and users.
  • The database must natively support integrity constraints.
  • Changes to the distribution of the database (centralized vs. distributed) must be transparent to applications and users.
  • Any languages supported by the database must not be able to subvert integrity controls.
source: about.com

1 comment: