150px-Edgar_F_Codd (1)                   


Edgar Frank “Ted” Codd (August 23, 1923 – April 18, 2003) was a British ComputerScientist who, while working for IBM, invented the RELATIONAL MODEL  for database management, the theoretical basis for relational database. He made other valuable contributions to computer science, but the relational model, a very influential general theory of data management, remains his most mentioned achievement.



Edgar Frank Codd was born on the Isle of Portland in England.Codd attended Oxford University, where he earned degrees in mathematics and chemistry, and flew in the Royal Air Force during World War II. He then moved to the United States and joined IBM as a mathematical programmer in 1949 for the  Selective Sequence Electronic Calculator, a huge tube-based computer that had the speed and flexibility to solve many of the larges scientific problems of its day.



He then invented a novel “multiprogramming” method for IBM’s pioneering STRETCH computer.Thismethodenabled STRETCH, the forerunner to modern mainframe computers, to run several programs at the same time.This is the maintenance console of IBM’s Stretch, the industry’s most powerful computer when first delivered in 1961. Stretch had 150,000 transistors and could perform 100 billion computations a day. Stretch pioneered in various advanced systems concepts, such as look-ahead, overlapping/pipelining of instructions, error-checking and correction, control-program operating systems and the 8-bit byte. (VV3073) .

After earning his doctorate in computer science at the University of Michigan in 1967 under a full scholarship from IBM, Codd moved to IBM’s San Jose Research Laboratory in San Jose, where he conceived his relational model.Codd was named an IBM Fellow in 1976, and in 1981 he received the Turing Award, the highest technical honor in the computing profession. In 2002, Forbes Magazine listed Codd’s relational model of data as one of the most important innovations of the previous 85 years.


His longtime collaborator, Chris Date, said “Codd’s biggest overall achievement was to make database management into a science. He put the field on solid scientific footing by providing a theoretical framework — the relational model — within which a variety of important problems could be attacked in a scientific manner.”

Janet Perna, general manager of Data Management Solutions for IBM’s Software Group, expressed her admiration for the inventor of the product for which she is now responsible. She remarked that “Ted Codd will forever be remembered as the father of relational database. His remarkable vision and intellectual genius ushered in a whole new realm of innovation that has shaped the world of technology today — but perhaps his greatest achievement is inspiring generations of people who continue to build upon the foundations he laid. Database professionals all over the world mourn his passing”.


To access data using this relational model, Codd envisioned a relatively easy-to-use query language based on a foundation of relational set theory. Codd also believed that a database management system should provide a standard access approach so that an application program did not have to be aware of how the data was organized.


In 1977, Oracle became the first commercial relational database management system.As a result, IBM in 1982 came out with the first version of what later became the Structured Query Language (SQL). Retiring from IBM after a serious injury in the early 1980s, Codd had his own consulting group until 1999. He died on April 18, 2003 at his home on Williams Island, Florida.


What does Codd’s Rules mean?

Codd’s rules refers to a set of 13 database management system rules (0-12) developed by E.F. Codd in 1969-1970. He designed these rules as the prerequisites to consider a database management systems (DBMS) as a relational data base management system (RDBMS). Although the rules were not initially widely popular in commercial use, later DBMSs were based on Codd’s rules.

Codd’s rules are also referred to as Codd’s law, Codd’s 12 rules or Codd’s 12 commandments.

CODD’s 12 rules define an ideal relational database which is used as a guideline for designing relational database systems today. Though no commercial database system completely conform to all 12 rules, they do interpret the relational approach. Here are the CODD’s 12 rules:

  • Rule 0: Foundation rule: The system must qualify as relational both as a database and as a management system.
  • Rule 1: The information rule: All information in the database must be represented in one and only one way (that is, as values in a table).
  • Rule 2: The guaranteed access rule: All data should be logically accessible through a combination of table name, primary key value and column name.
  • Rule 3: Systematic treatment of null values: A DBMS must support Null Values to represent missing information and inapplicable information in a systematic manner independent of data types.
  • Rule 4: Active online catalog based on the relational model: The database must support online relational catalog that is accessible to authorized users through their regular query language.
  • Rule 5: The comprehensive data sublanguage rule: The database must support at least one language that defines linear syntax functionality, supports data definition and manipulation operations, data integrity and database transaction control.
  • Rule 6: The view updating rule: Representation of data can be done using different logical combinations called Views. All the views that are theoretically updatable must also 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.
  • Rule 8: Physical data independence: Changes made in physical level must not impact and require a change to be made in the application program.
  • Rule 9: Logical data independence: Changes made in logical level must not impact and require a change to be made in the application program.
  • Rule 10: Integrity independence: Integrity constraints must be defined and separated from the application programs. Changing Constraints must be allowed without affecting the applications.
  • Rule 11: Distribution independence: The user should be unaware about the database location i.e. whether or not the database is distributed in multiple locations.
  • Rule 12: The nonsubversion rule: If a system provides a low level language, then there should be no way to subvert or bypass the integrity rules of high-level language.

Of all the rules, rule 3 is the most controversial. This is due to a debate about three-valued or ternary, logic. Codd’s rules and SQL use ternary logic, where null is used to represent missing data and comparing anything to null results in an unknown truth state. However, when both booleans or operands are false, the operation is false; therefore, not all data that is missing is unknown, hence the controversy.

Edgar F. Codd first proposed the process of normalization and what came to be known as the 1st normal form in his paper A Relational Model of Data for Large Shared Data Banks Codd stated:

Database normalization is the process of removing redundant data from your tables in to improve storage efficiency, data integrity, and scalability.

In the relational model, methods exist for quantifying how efficient a database is. These classifications are called normal forms (or NF), and there are algorithms for converting a given database between them.Normalization generally involves splitting existing tables into multiple ones, which must be re-joined or linked each time a query is issued

“There is, in fact, a very simple elimination procedure which we shall call normalization. Through decomposition nonsimple domains are replaced by ‘domains whose elements are atomic (nondecomposable) values.’”

Edgar F. Codd originally established three normal forms: 1NF, 2NF and 3NF. There are now others that are generally accepted, but 3NF is widely considered to be sufficient for most applications. Most tables when reaching 3NF are also in BCNF (Boyce-Codd Normal Form).