Featured post

What is Relational Data Model ?

 Introduction

  • Before 1970 most the database system were based on  two models 

i.e. Hierarchical Model or Network Model


  • Dr. Codd  (IBM Scientist) proposed a relational Data Model in 1970.


  • A RDBMS is a Database  Management system which is based on relational model as introduced by Dr. Codd. It should satisfy Codd 12 rules but in practice there is no DBMS that satisfies all these rules. 

  • Today, popular  RDBMS are:

    • Microsoft Access

    • MSSQL

    • MYSQL

    • Oracle

    • Sybase

    • DB2

    • Informix

    • FoxBASE, FoxPro & Clipper etc.



Overview  of CODD’s 12 rules




  • Dr. E.F. Codd is an IBM researcher who first developed the relational data model in 1970. 


  • In 1985 Dr. Codd published a list of 12 rules that define an ideal  relational database and has provided a guideline for the design of all relational database system


Codd's Rules 

Rule 1 : The information Rule 


This  rule simply requires that all Information/ data should

be presented in table form. 

This is the basis of Relational Model


Rule 2 : Guaranteed Access Rule

  • Each and every data in a relational data base is guaranteed to be logically accessible by resorting to a combination of table name, primary key value and column name. 


  • Every value can be accessed by providing table name, column name and key.

 

  • All data are uniquely identified and accessible via this identity.



Rule 3 : Systematic treatment of null values.


  • The RDBMS must support the null values to represent missing information. They must distinct from zero or spaces. 


  • They must be independent of data value.


Rule 4 : Dynamic on-line catalog based on the relational model 


  • System catalog is a collection of tables that the DBMS maintain for its own use.


  • These Table hold the description of the authorized users as the part of the database 


Rule 5 : Comprehensive data sub-language Rule 


  • The database must support at least one clearly defined language that includes functionality for Data Definition 

    Data Manipulation, Integrity Constraints and transaction process.


  • All commercial relational database  use  forms of SQL as their supported comprehensive language.


Rule 6 : View updating Rule


  • Data can be presented in different logical combinations called views. 


  • Each view should support the full range of data manipulation that has direct access to a table available.

Rule 7 : High-level Insert, Update and Delete 



  • Data can retrieved from a from a relational database in set constructed of data from multiple rows and tables.


  • This rules state that insert, update and delete operations should be supported for RDBMS

Rule 8 : Physical data independence 



  • The users is isolated from the physical method of storing and retrieving information from the database.


  • Change can be made to the basic architecture without affecting how to user accesses it.


Rule 9 : Logical data independence.



  • How data is viewed should not be changed when the logical structure (Table Structure ) of the database change.


  • This rule is particularly difficult to satisfy

Rule 10 : Integrity Independence


  • The database language (like SQL) should support constraints on user input maintain database integrity.


  • No component of a primary key can have null value.


  • If a foreign key is defined in one table, any value in it must exist as a primary key in another table. 


Rule 11 : Distribution Independence. 


  • Database must allow manipulation of distribution data located in other computer system.


  • Applications should still work in a distributed database (DDB)


  • Distribution independence means a Application program that accesses the DBMS on a single computer should also work,  without modification, even if the data is moved from   one computer to another in a network environment.




Rule 12: The Non-Subversion rule:


Non-subversion rule


All the database access must be

controlled through the  DBMS so that

the integrity of the  database  cannot be

compromised without the knowledge of

the user.



Comments