Please start any new threads on our new site at We've got lots of great SQL Server experts to answer whatever question you can come up with.

Our new SQL Server Forums are live! Come on over! We've restricted the ability to create new threads on these forums.

SQL Server Forums
Profile | Active Topics | Members | Search | Forum FAQ
Save Password
Forgot your Password?

 All Forums
 SQL Server 2000 Forums
 SQL Server Administration (2000)
 Codds Rule
 Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

Yak Posting Veteran

58 Posts

Posted - 03/29/2004 :  02:18:43  Show Profile  Reply with Quote

Can any 1 tell me which are the Codd's Rules that SQL Server supprts..???


Funky Drop Bear Fearing SQL Dude!

4970 Posts

Posted - 03/29/2004 :  02:29:38  Show Profile  Visit Merkin's Homepage  Reply with Quote
I'll do you a deal. If you can tell me which rules you need supported, and I'll tell you if it does.

Go to Top of Page

Flowing Fount of Yak Knowledge

3575 Posts

Posted - 03/29/2004 :  02:43:05  Show Profile  Reply with Quote
Here is a good article Frank K. posted a week or so ago on the subject. This paper attempts to determine which database (Oracle, DB2 and SQL Server) is the most compliant with Codd's 12 rules.



Codd's Rules (from's_12_rules)

0. (Yes, there is a Rule 0!)
The system must qualify as relational, as a database, and as a management system. For a system to qualify as a relational database management system (RDBMS), that system must use its relational facilities (exclusively) to manage the database.

1. The information rule
All information in the database to be represented in one and only one way, namely by values in column positions within rows of tables.

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.

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. It is also implied that such representations must be manipulated by the DBMS in a systematic way.

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. 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.

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).

6. The view updating rule
All views that are theoretically updatable must be updatable by the system.

7. High-level insert, update, and delete
The system must support set-at-a-time insert, update, and delete operators.

8. Physical data independence
The physical representation of the data must be invisible to the user, so that the user can manage the data according to need rather than according to the way it is stored

9. Logical data independence
If a user's view of the data has been defined, then changing the logical structure of the data (tables, columns, rows, and so on) must not change the user's view.

10. Integrity independence
Integrity constraints must be specified separately from application programs and stored in the catalog. It must be possible to change such constraints as and when appropriate without unnecessarily affecting existing applications.

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.
(b) when existing distributed data is redistributed around the system.

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.

Edited by - eyechart on 03/29/2004 02:58:45
Go to Top of Page
  Previous Topic Topic Next Topic  
 Reply to Topic
 Printer Friendly
Jump To:
SQL Server Forums © 2000-2009 SQLTeam Publishing, LLC Go To Top Of Page
This page was generated in 0.03 seconds. Powered By: Snitz Forums 2000