Data Retrieval Facility
We present querying of hierarchical databases via a simplified
version of DL/I, the data-manipulation language of IMS.
-> Example schema: customer-account-branch
-> A branch can have several customers, each of which can have
several accounts.
-> An account may belong to only one customer, and a customer
can belong to only one branch.
Program Work Area
-> A buffer storage area that contains these variables
a. Record templates
b. Currency pointers
c. Status flag
-> A particular program work area is associated with precisely one
application program.
-> Example program work area:
a. Templates for three record types: customer, account, and branch.
b. Currency pointer to the most recently accessed record of branch,
customer, or account type.
c. One status variable.
The get Command
-> Data items are retrieved through the get command.
a. locates a record in the database and sets the currency pointer to
point to it
b. copies that record from the database to the appropriate program
work-area template
-> The get command must specify which of the database trees is to
be searched.
-> To scan all records in a consistent manner, we must impose an
ordering on the records.
-> Preordered listing of the records in the example database:-
Parkview, Fleming, A-522, A-561, Freeman, A533,
Seashore, Boyd, A-409, A-622
We present querying of hierarchical databases via a simplified
version of DL/I, the data-manipulation language of IMS.
-> Example schema: customer-account-branch
-> A branch can have several customers, each of which can have
several accounts.
-> An account may belong to only one customer, and a customer
can belong to only one branch.
Program Work Area
-> A buffer storage area that contains these variables
a. Record templates
b. Currency pointers
c. Status flag
-> A particular program work area is associated with precisely one
application program.
-> Example program work area:
a. Templates for three record types: customer, account, and branch.
b. Currency pointer to the most recently accessed record of branch,
customer, or account type.
c. One status variable.
The get Command
-> Data items are retrieved through the get command.
a. locates a record in the database and sets the currency pointer to
point to it
b. copies that record from the database to the appropriate program
work-area template
-> The get command must specify which of the database trees is to
be searched.
-> To scan all records in a consistent manner, we must impose an
ordering on the records.
-> Preordered listing of the records in the example database:-
Parkview, Fleming, A-522, A-561, Freeman, A533,
Seashore, Boyd, A-409, A-622