View previous topic :: View next topic
|
Author |
Message |
iknow
Active User
Joined: 22 Aug 2005 Posts: 411 Location: Colarado, US
|
|
|
|
Hi folks
I came to know that DB2 is the first RDBMS at the mainframe end. Can anyone tell me like how many CODD'S rules does DB2 satisfies. If possible please list out the rules so that it would be really helpful for me. |
|
Back to top |
|
|
jeyakanthan
New User
Joined: 18 May 2005 Posts: 12 Location: chennai
|
|
|
|
Dr. E.F. Codd, an IBM researcher, first developed the relational data model in 1970. In 1985, Dr. Codd published a list of 12 rules that concisely define an ideal relational database, which have provided a guideline for the design of all relational database systems ever since.
Code: |
Rule 1: The Information Rule
All data should be presented to the user in table form. Last week's newsletter already discussed the basics of this rule.
Rule 2: Guaranteed Access Rule
All data should be accessible without ambiguity. This can be accomplished through a combination of the table name, primary key, and column name.
Rule 3: Systematic Treatment of Null Values
A field should be allowed to remain empty. This involves the support of a null value, which is distinct from an empty string or a number with a value of zero. Of course, this can't apply to primary keys. In addition, most database implementations support the concept of a nun- null field constraint that prevents null values in a specific table column.
Rule 4: Dynamic On-Line Catalog Based on the Relational Model A relational database must provide access to its structure through the same tools that are used to access the data. This is usually accomplished by storing the structure definition within special system tables.
Rule 5: Comprehensive Data Sublanguage Rule
The database must support at least one clearly defined language that includes functionality for data definition, data manipulation, data integrity, and database transaction control. All commercial relational databases use forms of the standard SQL (Structured Query Language) as their supported comprehensive language.
Rule 6: View Updating Rule
Data can be presented to the user in different logical combinations, called views. Each view should support the same full range of data manipulation that direct-access to a table has available. In practice, providing update and delete access to logical views is difficult and is not fully supported by any current database.
Rule 7: High-level Insert, Update, and Delete
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
The user is isolated from the physical method of storing and retrieving information from the database. Changes can be made to the underlying architecture ( hardware, disk storage methods ) without affecting how the user accesses it.
Rule 9: Logical Data Independence
How a user views data should not change when the logical structure (tables structure) of the database changes. This rule is particularly difficult to satisfy. Most databases rely on strong ties between the user view of the data and the actual structure of the underlying tables.
Rule 10: Integrity Independence
The database language (like SQL) should support constraints on user input that maintain database integrity. This rule is not fully implemented by most major vendors. At a minimum, all databases do preserve two constraints through SQL.
No component of a primary key can have a null value. (see rule 3)
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
A user should be totally unaware of whether or not the database is distributed (whether parts of the database exist in multiple locations). A variety of reasons make this rule difficult to implement; I will spend time addressing these reasons when we discuss distributed databases.
Rule 12: Nonsubversion Rule
There should be no way to modify the database structure other than through the multiple row database language (like SQL). Most databases today support administrative tools that allow some direct manipulation of the datastructure. |
|
|
Back to top |
|
|
iknow
Active User
Joined: 22 Aug 2005 Posts: 411 Location: Colarado, US
|
|
|
|
Hi Jeyakanthan,
Thanks for information. But could you please tell me that whether there exists ZEROth rule.
To my understanding
Code: |
ZEROth Rule
DB2, it has to be relational. |
Let me know in case of any concerns. |
|
Back to top |
|
|
bhoompallipraveen
New User
Joined: 07 Dec 2005 Posts: 6
|
|
|
|
Hi jeyakanthan,
How many CODD rules does DB2 supports?? And what is the min number that RDBMS package has to suppot??
Pls give me the number
Regds
Praveen |
|
Back to top |
|
|
iknow
Active User
Joined: 22 Aug 2005 Posts: 411 Location: Colarado, US
|
|
|
|
Hi,
I think it supports 11 Codd's rules.
Version must also taken into consideration.
Every RDBMS package supports more than 7 CODD's rules.
Correct me if I am wrong. |
|
Back to top |
|
|
ranjitbhingare
New User
Joined: 30 Nov 2005 Posts: 94 Location: PUNE
|
|
|
|
DB2 supports 10.5 rules. It partially supports rule 6 and does not support Rule 11. |
|
Back to top |
|
|
small_world
New User
Joined: 22 Jul 2005 Posts: 24 Location: pune
|
|
|
|
Hi,
There are 12 Codd's Rule (Plus one)
Codd's Rule Zero.
the information rule
the guaranteed access rule
systematictreatment of nulls
active online catalog based on the relational model
the comprehensive data sub-languagerule
the view updating rule
high level inser update and delete
physical data independence
logical data independence
integrity independence
distribution independence
the non subversion rule
|
|
Back to top |
|
|
asifaddy Warnings : 1 New User
Joined: 06 Feb 2007 Posts: 5 Location: Bangalore
|
|
|
|
RULE 0 or CODD'S RULE ZERO or ZEROth RULE : this rule states that all subsequent rules are based on the notion that in order for a database to be considered relational, it must use its relational facilities exclusively to manage the database. |
|
Back to top |
|
|
dr_te_z
New User
Joined: 08 Jun 2007 Posts: 71 Location: Zoetermeer, the Netherlands
|
|
|
|
Hmm. IBM added the XML column in V9. Therefore the content of a column is no longer 1 atomic value...(they just sqeezed a subset of IMS in that column)
I wonder: can DB2 still be concedered as a pure-relational database? Might that be the reason why IBM is referring to DB2 as: database-engine? |
|
Back to top |
|
|
ILdba
New User
Joined: 11 Feb 2010 Posts: 3 Location: Illinois, USA
|
|
|
|
The "zero rule" was added to keep vendors of non-relational products from adding SQL to their product and calling it relational.
The FUN part of the 0 rule is that everything IBM is zero relative; counting does not start with one. |
|
Back to top |
|
|
Maddipatla Rajasekhar
New User
Joined: 10 Mar 2009 Posts: 16 Location: Hyderabad
|
|
|
|
For any database to be considered as a RDBMS, it has to satisfy atleast 6 CODD rules
Regards
Raj Maddipatla |
|
Back to top |
|
|
Jim Herrmann
New User
Joined: 09 Apr 2013 Posts: 3 Location: US
|
|
|
|
ranjitbhingare wrote: |
DB2 supports 10.5 rules. It partially supports rule 6 and does not support Rule 11. |
It does support rule 11 via nicknames and aliases. |
|
Back to top |
|
|
|