Data Independence

The three-schema architecture can be used to further explain the concept of data independence, which

can be defined as the capacity to change the schema at one level of a database system without having

to change the schema at the next higher level. We can define two types of data independence:

1. Logical data independence is the capacity to change the conceptual schema without having to

change external schemas or application programs. We may change the conceptual schema to expand

the database (by adding a record type or data item), to change constraints, or to reduce the database

(by removing a record type or data item). In the last case, external schemas that refer only to the

remaining data should not be affected.

2. Physical data independence is the capacity to change the internal schema without having to change

the conceptual schema. Hence, the external schemas need not be changed as well. Changes to the

internal schema may be needed because some physical files were reorganized—for example, by

creating additional access structures—to improve the performance of retrieval or update. If the same

data as before remains in the database, we should not have to change the conceptual schema.


DDL & DML


A database system provides a data-definition language (DDL) to specify the database schema and a


data-manipulation language (DML) to express database queries and updates. In practice, the data-

definition and data-manipulation languages are not two separate languages; instead they simply form


parts of a single database language, such as the SQL language. Almost all relational database systems

employ the SQL language.