Codd's 12 rules are a set of thirteen rules (numbered zero to twelve) proposed by Edgar F. Codd, a pioneer of the relational model for databases, designed to define what is required from a database management system in order for it to be considered relational, i. Edgar Frank "Ted" Codd ( August 23, 1923 – April 18, 2003) was a British computer scientist who while working The relational model for Database management is a Database model based on first-order predicate logic, first formulated and proposed in 1969 by Edgar A Computer Database is a structured collection of records or data that is stored in a computer system A database management system ( DBMS) is Computer software designed for the purpose of managing Databases DBMSes may use any of a variety of Data models e. , an RDBMS. A Relational database management system (RDBMS is a Database management system (DBMS that is based on the Relational model as introduced by E [1][2]
Codd produced these rules as part of a personal campaign to prevent his vision of the relational database being diluted, as database vendors scrambled in the early 1980s to repackage existing products with a relational veneer. The 1980s was the decade spanning from January 1 1980 to December 31 1989. Rule 12 was particularly designed to counter such a positioning. In fact, the rules are so strict that all popular so-called "relational" DBMSs fail on many of the criteria.
The rules
Rule 0: The system must qualify as relational, as a database, and as a management system. The relational model for Database management is a Database model based on first-order predicate logic, first formulated and proposed in 1969 by Edgar A Computer Database is a structured collection of records or data that is stored in a computer system A management system is the framework of processes and Procedures used to ensure that an Organization can fulfill all tasks required to achieve its objectives
- For a system to qualify as a relational database management system (RDBMS), that system must use its relational facilities (exclusively) to manage the database. A Relational database management system (RDBMS is a Database management system (DBMS that is based on the Relational model as introduced by E A Computer Database is a structured collection of records or data that is stored in a computer system
Rule 1: The information rule:
- All information in the database is to be represented in one and only one way, namely by values in column positions within rows of tables.
Rule 2: The guaranteed access rule:
- All data must be accessible with no ambiguity. This rule is essentially a restatement of the fundamental requirement for primary keys. It says that every individual scalar value in the database must be logically addressable by specifying the name of the containing table, the name of the containing column and the primary key value of the containing row. In Relational database design a unique key or primary key is a Candidate key to uniquely identify each row in a table.
Rule 3: Systematic treatment of null values:
- The DBMS must allow each field to remain null (or empty). Specifically, it must support a representation of "missing information and inapplicable information" that is systematic, distinct from all regular values (for example, "distinct from zero or any other number," in the case of numeric values), and independent of data type. Systematic was a Hard rock band from San Jose California. The band was one of the first signings to Metallica drummer Lars Ulrich 's A data type in Programming languages is an attribute of a datum which tells the computer (and the programmer something about the kind of datum it is It is also implied that such representations must be manipulated by the DBMS in a systematic way.
Rule 4: Active online catalog based on the relational model:
- The system must support an online, inline, relational catalog that is accessible to authorized users by means of their regular query language. The database catalog of a Database instance consists of Metadata in which definitions of database objects such as Basis tables view tables Synonyms Query languages are Computer languages used to make queries into Databases and Information systems Broadly query languages can be classified That is, users must be able to access the database's structure (catalog) using the same query language that they use to access the database's data.
Rule 5: The comprehensive data sublanguage rule:
- The system must support at least one relational language that
- (a) Has a linear syntax
- (b) Can be used both interactively and within application programs,
- (c) Supports data definition operations (including view definitions), data manipulation operations (update as well as retrieval), security and integrity constraints, and transaction management operations (begin, commit, and rollback).
Rule 6: The view updating rule:
- All views that are theoretically updatable must be updatable by the system.
Rule 7: High-level insert, update, and delete:
- The system must support set-at-a-time insert, update, and delete operators. This means that data can be retrieved from a relational database in sets constructed of data from multiple rows and/or multiple tables. This rule states that insert, update, and delete operations should be supported for any retrievable set rather than just for a single row in a single table.
Rule 8: Physical data independence:
- Changes to the physical level (how the data is stored, whether in arrays or linked lists etc. ) must not require a change to an application based on the structure.
Rule 9: Logical data independence:
- Changes to the logical level (tables, columns, rows, and so on) must not require a change to an application based on the structure. Logical data independence is more difficult to achieve than physical data independence.
Rule 10: Integrity independence:
- Integrity constraints must be specified separately from application programs and stored in the catalog. Integrity constraints are used to ensure accuracy and consistency of data in a Relational database. The database catalog of a Database instance consists of Metadata in which definitions of database objects such as Basis tables view tables Synonyms It must be possible to change such constraints as and when appropriate without unnecessarily affecting existing applications.
Rule 11: Distribution independence:
- The distribution of portions of the database to various locations should be invisible to users of the database. Existing applications should continue to operate successfully :
- (a) when a distributed version of the DBMS is first introduced; and
- (b) when existing distributed data are redistributed around the system.
Rule 12: The nonsubversion rule:
- If the system provides a low-level (record-at-a-time) interface, then that interface cannot be used to subvert the system, for example, bypassing a relational security or integrity constraint.
See also
References
- ^ Codd, Edgar Frank: "Is Your DBMS Really Relational?", ComputerWorld, 14. The IBM System i is IBM's previous generation of systems designed for IBM i users and was subsequently replaced by the IBM Power Systems in April 2008 October 1985
- ^ Codd, Edgar Frank: "Does Your DBMS Run By the Rules?", ComputerWorld, 21. October 1985
© 2009 citizendia.org; parts available under the terms of GNU Free Documentation License, from http://en.wikipedia.org
network: | |