Codd's Twelve Rules - Rule 9 - Logical Data Independence
Rule 9
|
Logical Data Independence
|
Rule
|
“The
ability to change the conceptual (logic) schema without having to change the
next higher level external schema or application programs”.
“Insulation
of application programs and terminal users from the negative effects of
information-preserving changes of the logical database schema”.
|
Description
|
1. The addition or
removal of new entities, attributes, or relationships to the conceptual
schema should be possible without having to change existing external schemas
or having to rewrite existing application programs.
2. Logical Data independence means if we add some new columns
or remove some columns from table then the user view and programs should not
change.
3. The term
"Logical Data Independence" refer to the ability to present the
stored information in different ways to different users. The way you store
the data and the way you present it to a particular user is independent. Different
users perceive the same data differently.
|
Example
|
If user B add a new column salary in his view/table then it will not
effect the external view user; user A, but internal view of database has been
changed for both users A & B. Now user A can also print the salary. It
means if we change in view then program which use this view need not to be
changed.
For a table with the schema Employee(Eno, Ename, Street, City,
Salary), a view with the attributes (Eno, Ename) will not be affected if any
other attributes of Employee is altered.
More examples/illustrations can be tried in the following links;
|
Achievement
|
Logical Data
Independence is more difficult to achieve when compared to Physical Data
Independence since application programs are heavily dependent on the logical
structure of the data that they access.
|
Some DBMS that fulfills this property
|
Almost all Relational
DBMSs support this property with certain limits (say for example if columns
or tables removed).
|
Together,
Rule 8 Physical Data Independence and Rule 9 Logical Data Independence, specify
that specific access or storage techniques used by the RDBMS—and even changes
to the structure of the tables in the database—shouldn’t affect the user’s
ability to work with the data.
Excellent clarity of concept
ReplyDelete