JustAnswer.com

Wednesday, April 18, 2007

Oracle 6

INTRODUCTION
According to Elmasri and Navathe (1994), Dr. E. F. Codd, the originator of the relational
data model, published a two-part article in ComputerWorld (Codd, 1985) that lists 12 rules for
how to determine whether a DBMS is relational and to what extent it is relational. These rules
provide a very useful yardstick for evaluating a relational system. Codd also mentions that,according to these rules, no fully relational system is available yet. In particular, rules 6, 9, 10, 11,
and 12 are difficult to satisfy.

THE 12 RULES

Rule 1: The Information Rule
All information in a relational database is represented explicitly at the logical level in
exactly one way by values in tables.
All data is represented in the form of relations/tables (with rows and columns)Simple
Consistent and versatile


Rule 2: Guaranteed Access Rule
Each and every datum (atomic value) in a relational database is guaranteed to be logically
accessible by resorting to a table name, primary key value, and column name. All Data is uniquely
identified and accessible via this identity.

Rule 3: Systematic Treatment of Null Values
Null values (distinct from empty character string or a string of blank characters and distinct
from zero or any other number) are supported in the fully relational DBMS for representing
missing information in a systematic way, independent of data type.

Rule 4: Dynamic On-line Catalog based on the Relational Model
The database description is represented at the logical level in the same way as ordinary
data, so authorized users can apply the same relational language to its interrogation as they apply
to regular data.

Rule 5: Comprehensive Data Sublanguage Rule
A relational system may support several languages and various modes of terminal use (for
example, the fill-in-blanks mode). However, there must be at least one language whose statements
are expressible, per some well-defined syntax, as character strings and whose ability to support all
of the following is comprehensible: data definition, view definition, data manipulation (interactive
and by program), integrity constraints, and transaction boundaries (begin, commit, and rollback).

Rule 6: View Updating Rule
All views that are theoretically updateable are also updateable by the system.
Views are virtual tables. They appear to behave as conventional tables except that they are built
dynamically when the query is run. This means that a view is always up to date. It is not always
theoretically possible to update views. One problem exists when a view relates to part of a table
not including a candidate key. This means that potential updates would violate the entity integrity
rule.

Rule 7: High-level Insert, Update, and Delete
The capability of handling a base relation or a derived relation as a single operand applies
not only to the retrieval of data but also to the insertion, update, and deletion of data. i.e. The user
should be allowed to Delete, Update a set of tuples (rather than row by row)

Rule 8: Physical Data Independence
Application programs and terminal activities remain logically unimpaired whenever any
changes are made in either storage representation or access methods. i.e. Users and programs are
not dependent on the physical structure of the database.

Rule 9: Logical Data Independence
Application programs and terminal activities remain logically unimpaired when
information-preserving changes of any kind that theoretically permit unimpairment are made to
the base tables. Users and Programs are independent of the logical structure of the database, i.e.
the logical structure of the data can evolve with minimal impact on the programs.

Rule 10: Integrity Independence
Integrity constraints specific to a particular relational database must be definable in the
relational data sublanguage and storable in the catalog, not in the application programs. A
minimum of the following two integrity constraints must be supported:
1. Entity integrity: No component of a primary key is allowed to have a null value.
2. Referential integrity: For each distinct non-null foreign key value in a relational database,
there must exist a matching primary key value from the same domain.

Rule 11: Distribution Independence
A relational DBMS has distribution independence. Distribution independence implies that
users should not have to be aware of whether a database is distributed. Applications should still
work in a distributed database (DDB).

Rule 12: Nonsubversion Rule
If a relational system has a low-level (single-record-at-a-time) language, that low-level
language cannot be used to subvert or bypass the integrity rules or constraints expressed in the
higher-level (multiple-records-at-a-time) relational language.
If there is a record at a time interface (e.g. via 3GL), Security and integrity of the database
must no be violated. There should be no backdoor to bypass the security imposed by the DBMS.

On the basis of the above rules, there is no fully relational DBMS available today.

Wednesday, April 11, 2007

Oracle 5

NORMALIZATION
Normalization is a process of simplifying the relationship between data elements in a record. Through Normalization a collection of data in a record structure is replaced by successive record structures that are simpler and more predictable and therefore more manageable. It is process of reducing redundancy and eliminating the anomalies. (anamali means inconsistent state.)
Normalization is carried out for four reasons: · To Structure the data so that any pertinent relationships between entities can be represented. · To permit simple retrieval of data in response to query and report requests. · To simplify the maintenance of the data through updates, insertions, and deletion · To reduce the need to restructure or reorganize data when new application requirements arise. · Normalization can improve the quality of design for an application.
There are totally Five Normal Forms(Rules) out of which, any database should necessarily satisfy three of them, those Three Normal Forms are as follows:
First normal form is achieved when all repeating groups are removed so that a record is of fixed length. A repeating group, the re-occurrence of a data item within a record, is actually another relation. Hence, it is removed from the record and treated as an additional record structure, or relation.
Second Normal form should be in first normal form and no partial dependency exists. Means if we have a composite primary key(combination of 2 or more fields) then all the non keys must depend on the composite primary key. no attribute should depend upon the part of key.(for example if Rollno and SSno is a composite key, then no other field in that particular table should be depedent upon either Rollno or ssno individually)
Third Normal form is achieved when Transitive Dependencies are removed from a record design. The general case is as follows : A,B and C are three data items in a record. If C is functionally dependent on B (2nd N.F) and B is functionally dependent on A Then C is functionally dependent on A Therefore, a Transitive Dependency exists. In data management, transitive dependency is a concern because data can inadvertently be lost when the relationship is hidden. In the general case above, if A is deleted, then B and C are deleted also, whether or not this is intended. This problem is eliminated by designing the record for third normal form. Conversion to third normal form removes the transitive dependency by splitting the relation into two separate relations.
BCNF must be 3NF and every determinant is a candidate key. Candidate key is other than primary key, which uniquely identify each row in the table. for example ssno is PK then rollno becomes Candidate key.
4NF and 5NF are depends on instance. we can not give a proper def. bcz it all depends on joins. "CODD's 12 RULES" for a fully Relational DBMS