The following diagram describes the major syntactical elements used to define a database:
Database Elements
──┬────────────────────┬─┬─────────────────────┬───────────────────────► └─ <MODEL option> ; ─┘ └─ <UPDATE option> ; ─┘ ►─┬────────────────────────────────────────────────┬───────────────────► │ ┌◄───────────────────────────────────────────┐ │ └─┴─┬─/1\─<defaults specification>───────┬─ ; ─┴─┘ ├─/1\─<initialize statement>─────────┤ ├─/1\─<options specification>────────┤ ├─/1\─<parameters specification>─────┤ ├─/1\─<Accessroutines specification>─┤ ├─/1\─<DMCONTROL specification> ─────┤ ├─/1\─<DMUTILITY specification>──────┤ ├─/1\─<DMSUPPORT specification>──────┤ ├─/1\─<LOBUTILITY specification>─────┤ ├─/1\─<recovery specification>───────┤ ├─/1\─<data recovery specification>──┤ ├─/1\─<reconstruct specification>────┤ └─/1\─<reorganization specification>─┘ ┌◄─────────────────────────────────────────┐ ►─┴─┬─/1\─<audit trail specification>──┬─ ; ─┴─────────────────────────┤ ├─/1\─<control file specification>─┤ ├─<data set declaration>───────────┤ ├─<global item>────────────────────┤ ├─<physical specification>─────────┤ ├─<set-subset-Access>──────────────┤ ├─<remap specification>────────────┤ ├─<global data remap>──────────────┤ └─<logical database>───────────────┘
The following table describes the elements of the syntax diagram:
Option |
Description |
---|---|
A MODEL option is used to create a description file for a database that uses the DMSUPPORT library of another existing database. This option is explained in more detail in Using the MODEL and UPDATE Options. |
|
During the life of the database, the demands upon it can occasionally change. The UPDATE option allows the description of an existing database to be modified accordingly. This option is explained in more detail in Using the MODEL and UPDATE Options. |
|
The defaults specification is used to assign default attributes to items, data sets, sets, subsets, and other database structures. This specification is explained in more detail in Using the Defaults Specification. |
|
The initialize statement causes DMUTILITY to run and initialize all database files. This statement is explained in more detail in Using the Initialize Statement and the Options and Parameters Specifications. |
|
The options and parameters specifications are used to control compile-time and run-time features of the Accessroutines. These specifications are explained in more detail in Using the Initialize Statement and the Options and Parameters Specifications. |
|
The Accessroutines specification gives the name of the SYSTEM/ACCESSROUTINES code file for the database. This specification is explained in more detail in Using the Code File Specifications. |
|
The DMCONTROL specification designates the title of the DMCONTROL code file for the database. The file title can include a usercode and a pack name. If the DMCONTROL specification is not specified, the default title for the DMCONTROL code file is SYSTEM/DMCONTROL. This specification is explained in more detail in Using the Code File Specifications. |
|
The DMUTILITY specification provides the title of the DMUTILITY code file for the database. The file title can include a usercode and a pack name. If the DMUTILITY specification is not specified, the default title for the DMUTILITY code file is SYSTEM/DMUTILITY. This specification is explained in more detail in Using the Code File Specifications. |
|
The DMSUPPORT specification provides the title of the DMSUPPORT code file for the database. Primarily, this clause is used for databases that share DMSUPPORT code files. For a permanent directory database, the default title for the DMSUPPORT code file is ~<datapath specification>/DMSUPPORT/<database name>/<update level>. These specifications are explained in more detail in Using the Code File Specifications. |
|
The LOBUTILITY specification designates the title of the LOBUTILITY code file for the database. The file title can include a usercode and a pack name. If the LOBUTILITY specification is not specified, the default title for the LOBUTILITY code file is SYSTEM/LOBUTILITY. This specification is explained in more detail in Using the Code File Specifications. |
|
The recovery specification provides the title of the RECOVERY code file for the database. The file title can include a usercode and a pack name. If the recovery specification clause is not included in the database declaration, the default title for the RECOVERY code file is SYSTEM/DMRECOVERY. This specification is explained in more detail in Using the Code File Specifications. |
|
The data recovery specification designates the title of the DATARECOVERY code file for the database. The file title can include a usercode and a pack name. If the data recovery specification clause is not included in the database definition, the default title for the DATARECOVERY code file is SYSTEM/DMDATARECOVERY. This specification is explained in more detail in Using the Code File Specifications. |
|
The reconstruct specification designates the title of the RECONSTRUCT code file for the database. The file title can include a usercode and a pack name. If the reconstruct specification is not specified, the default title for the RECONSTRUCT code file is RECONSTRUCT/<database name>. For a permanent directory database, the default title for the RECONSTRUCT code file is ~<datapath specification>/RECONSTRUCT/<database name>. These specifications are explained in more detail in Using the Code File Specifications. |
|
The reorganization specification designates the title of the REORGANIZATION code file for the database. The file title can include a usercode and a pack name. If the reorganization specification is not specified, the default title for the REORGANIZATION code file is REORGANIZATION/<database name>. This specification is explained in more detail in Using the Code File Specifications. |
|
The audit trail is a record of changes made to the database. The audit trail is used to recover automatically the database following a hardware or software failure. The audit trail specification clause describes the physical attributes of the audit trail. This specification is explained in more detail in Using the Audit Trail and Control File Specifications. |
|
The control file is used for database interlock control. It also contains audit control information and dynamic database parameters. The control file specification clause describes the physical attributes of the control file. This specification is explained in more detail in Using the Audit Trail and Control File Specifications. |
|
A data set declaration describes the items which form a record of the data set, and the physical attributes of the data set. The database administrator can also define integrity and initialization controls for the items in the record. This declaration is explained in more detail in Data Set Declaration. |
|
A global item clause describes data items, group items, aggregate items, and population items that apply to the entire database. For example, global items can be used to contain control totals, hash totals, or populations. These items are explained in more detail in Database Global Items and Physical Specifications. |
|
Data sets, sets, and subsets are described in terms of both their logical and physical attributes. The physical specification enables the physical attributes to be described separately from the logical attributes. The physical specification is also used to specify physical attributes for global data. These specifications are explained in more detail in Database Global Items and Physical Specifications. |
|
<set-subset-Access> |
A set or subset is a structure used to retrieve the records of a data set. Several different sets and subsets can exist for the same data set, enabling the data set to be accessed in several different ways. An Access is used with direct, ordered, and random data sets. These data sets neither require nor permit accompanying sets and subsets. The Access functions like a set; but, unlike a set, an Access is not a physical structure. Instead, the Access defines the physical ordering of the records in the actual data set. These structures and functions are explained in more detail in Sets, Subsets, and Accesses. |
A remap specification describes remaps, which are used with logical databases to provide security and data independence. Remaps provide security by restricting the access of user programs to the items and records in the database. Remaps provide data independence by allowing changes to data set record formats without requiring existing programs to be reprogrammed or recompiled. For additional information about remaps, refer to Using Remaps and Logical Databases for Security and Data Independence. |
|
<global data remap> |
A global data remap redescribes the global data. Global data remaps enable the database administrator to alter the appearance of the global data record and to control how the items in the record are accessed. Global data remaps also provide data independence exactly as a specification does. |
A logical database clause describes logical databases, which provide database security. The database administrator can use logical databases to control which data sets are accessed and how these data sets are used. For additional information about logical databases, refer to Using Remaps and Logical Databases for Security and Data Independence. |