FORTRAN. For the purpose of this chapter, a run unit
is an execution of one or more programs.
Data Manipulation Languages (DMLs)
A data manipulation language (DML) is a language
used to cause data to be transferred between a run unit
and the database. A DML is not a complete language by
itself. It is called a query language by some
manufacturers. It relies on a host language to provide a
framework for it and to provide the procedural
capabilities required to manipulate data.
To depict DBMS events, we selected the READ
function. The sequence depicted in figure 3-15
provides a conceptual example of an application
Figure 3-15.A conceptual view of the events that take place
when an application program reads a record in a system
interfaced with a DBMS.
program of a particular software system reading a
record. It is intended as a conceptual training aid for
instructional purposes only.
The numbered arrows in figure 3-15 trace a call for
data by application Program 1 of System A. (Calls for
data by other programs maybe handled concurrently by
the DBMS, but this is not depicted in the figure.) The
following events (numbered to correspond with figure
3-15) take place, depending on the software system in
use, when a program attempts to read a record:
1. DML Program 1 of System A makes a call for
data from Database (A) to the DBMS.
2. The DBMS analyzes the call and supplements
the arguments provided in the call itself with
information provided by the schema for Database (A),
and the subschema referenced by Program 1.
3. The DBMS obtains the subschema used for
System A and retrieves the description of the data in
4. The DBMS examines the database physical
description and keys the actual physical record to read.
5. On the basis of the call for its services and the
information obtained from the schema and subschema,
the DBMS requests physical I/O operations, as required
to execute the call, from the operating system.
6. The operating system (OS) interacts with the
storage media containing the database.
7. The operating system then delivers the
requested data from the actual database to the system
8. The DBMS transfers data, as required to fulfill
the call, between the system buffers and the user work
area (UWA) of Program 1, which originated the call.
Any required data transformations between the
representation of the data as it appears in the database
(as declared in the schema) and the representation of the
data as it appears in a programs UWA (as declared by
the subschema) are handled by the DBMS.
The DBMS provides status information to program
1 based on the outcome of its call, for example, error
indications. The data in Program 1s UWA may be
manipulated as required, using the facilities in the host
language. The system buffers are shared by all
programs serviced by the DBMS. Remember,
programs interact with the system buffers entirely
through the DBMS.