Codd’s Rules

There are 12 rules formulated by E.F. Codd for RDBMS in 1970. So, It is known as Codd’s Rules or Codd’s 12 Rules. If an RDBMS satisfies all of these rules 12 rules, then full benefits of the relational database results can be obtained.
The Codd’s 12 rules are given as follows:

  • Information Representation
  • Guaranteed Access
  • Systematic Treatment of Null Values
  • Database Description Rule
  • Comprehensive Data Sub-Language
  • View Updating
  • High-Level Update, Insert, Delete
  • Physical Data Independence
  • Logical Data Independence
  • The Distribution Rule
  • Non-Subversion
  • Integrity Rule
  • 1. Information Representation : In a relational database model, all information should be explicitly and logically represented by entering the data values in the form of tables. The information such as view and column names should be in the table form. Data stored in the data dictionary should also be in the tabular form.

    2. Guaranteed Access : This rule refers to the fact that a table can be taken as a storage structure and at the intersection of each column and row, there will necessarily be only one specific value of data item (or null). Every value of data item must be logically addressable by using a combination of table_name, primary-key-value and the column-name.

    3. Systematic Treatment of Null Values : In a relational database management system, null values should be supported for the representation of missing and inapplicable information only. The Database management system must have a consistent method for representing null values.

    4. Database Description Rule : The description of a database is stored and maintained in the form of tables. This allows the users with appropriate authority to query information using similar ways and using the same language. This implies that a data dictionary should be present within the RDBMS that is constructed out of tables that can examined by using the structured query language (SQL).

    5. Comprehensive Data Sub-Language : The RDBMS must be completely manageable through its own extension of SQL. The SQL should support Data Definition, Views, Data Manipulation, Integrity Constraints and Transaction Boundary.

    6. View Updating : Any view that can be defined using combination of base tables, and theoretically updatable. It must also be capable of being updated by the RDBMS.

    7. High-Level Update, Insert, Delete : An RDBMS must do more than just be able to retrieve relational data sets. It must also be possible to insert, update and delete data items from the relational set.

    8. Physical Data Independence : Physical Data Independence refers to the ability to modify the schema followed at the physical level without affecting the schema followed at a conceptual level. Changes made to physical storage representation or access methods do not require changes to be made to the application programs which is used to manipulate data in the tables.

    9. Logical Data Independence : Logical Data Independence refers to the ability to modify the conceptual schema without causing any changes in the schema followed at view level. Application programs should not be affected by the changes made to the base tables.

    10. The Distribution Rule : An RDBMS, it must have distribution independence, thus it must make it possible for the database to be distributed across multiple computers even though they are having heterogeneous platforms both for hardware and operating system. This is one of the most attractive aspects of the RDBMS.

    11. Non-Subversion : If the RDBMS supports facilities allowing application programs to operate on a table a row at a time, then an application program using this type of database access is prevented from bypassing entity-integrity constraints that may be defined for the database.

    12. Integrity Rule : Integrity constraints specific to a particular relational database must be definable in SQL or some other data sub-language. These integrity constraints must be storable in the catalogue and not in the application programs.