Dr.E.F.Codd's Rules
Dr.E.F.Codd's Rules
Codds Rules
These rules are used for valuating a product to be called as relational
database management systems. Out of 12 rules, a RDBM product should
satisfy at least ! rules " rule called rule # that must be satisfied.
RULE 0: Foundation Rule
$or any system to be advertised as, or claimed to be relational DBM
should manage database %ith in it self, %ith out using an e&ternal language.
RULE 1: Information Rule
'll information in relational database is represented at logical level in
only one %ay as values in tables.
RULE 2: Guaranteed Access
(ach and every data in a relational database is guaranteed to be
logically accessibility by using to a combination of table name, primary )ey
value and column name.
RULE : !"stematic #reatment of $ull %alues
*ull values are supported for representing missing information and
inapplicable information. They must be handled in systematic %ay,
independent of data types.
RULE &: D"namic 'nline Catalo( )ased Relation *odel
The database description is represented at the logical level in the same
%ay as ordinary data so that authori+ed users can apply the same relational
language to its interrogation as they do to the regular data.
RULE +: Com,re-ensi.e Data !u) Lan(ua(e
' relational system may support several languages and various models
of terminal use. ,o%ever there must be one language %hose statement can
e&press all of the follo%ing-
Data Definitions, .ie% Definitions, Data Manipulations, /ntegrity,
0onstraints, 'uthori+ation and transaction boundaries.
RULE /: %ie0 U,datin(
'ny vie% that is theoretical can be updatable if changes can be made
to the tables that effect the desired changes in the vie%.
RULE 1: 2i(- le.el U,date3 Insert and Delete
The capability of handling a base relational or derived relational as a
single operand applies not only retrieval of data also to its insertion, updating,
and deletion.
RULE 4: 5-"sical Data Inde,endence
'pplication program and terminal activities remain logically unimpaired
%henever any changes are made in either storage representation or access
method.
RULE 6: Lo(ical Data Inde,endence
'pplication programs and terminal activities remain logically
unimpaired %henever any changes are made in either storage representation
or access methods.
RULE 10: Inte(rit" Inde,endence
/ntegrity constraints specific to particular database must be definable in
the relational data stored in the catalog, not in application program.
RULE 11: Distri)uted Inde,endence
1hether or not a system supports database distribution, it must have a
data sub2language that can support distributed databases %ithout changing
the application program.
RULE 12: $on !u)7%ersion
/f a relational system has lo% level language, that lo% language cannot
use to subversion or by pass the integrity rules and constraints e&pressed in
the higher level relational language.