Pathmaker Programming Guide
Creating a DB Requester Application
Pathmaker Application Development Overview
067868 Tandem Computers Incorporated 3–33
For example, assume you have the following SQL DDL for a multifile DB application:
CREATE TABLE SUPPLIER
(
SUPPLIER_NUM PIC 9 COMP,
SUPPNAME PIC X(20),
PRIMARY KEY (SUPPLIER_NUM, SUPPNAME)
)
ORGANIZATION KEY SEQUENCED;
CREATE TABLE FROMSUPP
(
SUPPLIER_NUM PIC 9 COMP,
PARTNUM PIC 9 COMP,
DESCRIPTION PIC X(30),
PRIMARY KEY (SUPPLIER_NUM)
)
ORGANIZATION KEY SEQUENCED;
SUPPLIER (parent) is joined to FROMSUPP (child) on
SUPPLIER_NUM.
SUPPLIER_NUM is an efficient access field for SUPPLIER.
If this were a single-file DB application, and SUPPLIER was not joined to FROMSUPP,
SUPPLIER_NUM would still be an efficient access field for SUPPLIER.
Rule 2: Efficient Single Column Join. For a child joined to a parent on an efficient single
column key, the join column is an efficient access field.
Assume you have the following SQL DDL:
CREATE TABLE SUPPLIER
(
SUPPLIER_NUM PIC 9 COMP,
SUPPNAME PIC X(20),
PRIMARY KEY (SUPPLIER_NUM, SUPPNAME)
)
ORGANIZATION KEY SEQUENCED;
CREATE TABLE FROMSUPP
(
SUPPLIER_NUM PIC 9 COMP,
PARTNUM PIC 9 COMP,
DESCRIPTION PIC X(30),
PRIMARY KEY (SUPPLIER_NUM) <-- Single column
) primary key
ORGANIZATION KEY SEQUENCED;
SUPPLIER (parent) is joined to FROMSUPP (child) on
SUPPLIER_NUM.
SUPPLIER_NUM is an efficient access field for FROMSUPP.