2. Other Concept Associated with Instances and Schemes

1. Data Independence

 Data independence refers to the ability to modify a scheme definition in one level without affecting a scheme definition in a higher level.

 Classes of Data Independence 

There are two categories of data independence:

Physical data independence 

•              The ability to modify the physical scheme without causing

application programs to be rewritten

•              Modifications at this level are usually to improve performance

Logical data independence

•              The ability to modify the conceptual scheme without causing application programs to be rewritten

•              Usually done when logical structure of database is altered

•              Logical data independence is harder to achieve as the application programs are to a large extent heavily dependent on the logical structure of the data.

 2. Data Definition Language (DDL)

The data definition language (DDL) is a language used to specify a database scheme as a set of definitions expressed in a DDL. DDL statements are compiled, resulting in a set of tables stored in a special file called a data dictionary or data directory. This directory contains metadata (data about data). The storage structure and access methods used by the database system are specified by a set of definitions in a special type of DDL called a data storage and definition language. Basically, DDL statements enable developers hide the implementation details of the database schemes from the users. 

3. Data Manipulation Language (DML)

Data Manipulation could refer to any of the following: 

•              retrieval of information from the database

•              insertion of new information into the database

•              deletion of information in the database

•              modification of information in the database

A Data Manipulation Language (DML) is a language which enables users to access and manipulate data. The main goal of the DML is to provide efficient human interaction with the system.

Types of Data Manipulation Language (DML)

There are two types of DML: 

•              procedural: the user specifies what data is needed and how to get

it

•              nonprocedural: the user only specifies what data is needed

Easier for user

•              May not generate code as efficient as that produced by procedural languages.

•              The terms DML and query language are often used synonymously. This is due to the fact that a query language is a portion of a DML involving information retrieval only.