TurboIMAGE/XL Database Management System Reference Manual MPE/iX 5.5 Documentation
TurboIMAGE/XL Database Management System Reference Manual
Table of Contents
TurboIMAGE/XL Database Management System Reference Manual
TurboIMAGE/XL Database Management System Reference Manual : COPYRIGHT NOTICE
Ch 1. Introduction
General Overview
Data Security
Rapid Data Retrieval and Formatting
Program Development
Program Maintenance
Program File Independence
File Consolidation
Special Information Needs
Database Personnel
How to Use TurboIMAGE/XL
Ch 2. Database Structure and Protection
Database Elements
Data Items
Data Entries
Data Sets
Data Set Types and Relationships
Master Data Sets
Automatic and Manual Masters
Manual versus Automatic Data Sets
Detail Data Sets
Paths
Primary Paths
Sort Items
Jumbo Data Sets
The ORDERS Database
Database Files
Root File
Data Files
Media Record Length
Blocks
Protecting the Database
Privileged File Protection
Account and Group Protection
Defining Database Security
User Classes and Passwords
Read and Write Class Lists
Write Access
Update Access
Read Access
No Access
Creator-Only Access
Sample Read and Write Class Lists
Null and Absent Lists
Database Access Modes and Data Set Write Lists
Granting a User Class Access
User Classes and Locking
Protection in Relation to Library Procedures
Protection Provided by the TurboIMAGE/XL Utilities
Ch 3. Defining a Database
Database Description Language
Language Conventions
Schema Structure
Password Part
Item Part
Data Item Length
TurboIMAGE/XL and Program Language Data Types
Data Items of Type P
Complex Numbers
Business BASIC Decimal Numbers
QUERY/3000 and Data Types
Data Item Identifiers
Set Part
Master Data Sets
Detail Data Sets
Master Key and Detail Search Items
Data Set Identifiers
Schema Processor Operation
Creating the Text File
The Database Creator
Schema Processor Commands
Continuation Records
$PAGE
$TITLE
$CONTROL
Selecting the Block Size
Schema Processor Output
Summary Information
Schema Errors
Schema Processor Example
Ch 4. Using the Database
Opening the Database
Database Control Blocks
Passwords
Database Access Modes
Concurrent Database Access Modes
Database Operations
Selecting a Database Access Mode
Locking within a Database Process
User Transaction Logging
Entering Data in the Database
Sequence for Adding Entries
Coordinating Additions to a Database
Access Mode and User Class Number
Key and Search Items
Reading the Data
Current Path
Reading Methods
Directed Access
Serial Access
Calculated Access
Chained Access
Sorted Sequential Access
Rereading the Current Record
Updating Data
Access Modes and User Class Number
Updating Key, Search, and Sort Items
Critical Item Update
Deleting Data Entries
Sequence for Deleting Entries
Coordinating Deletions from a Database
Access Modes and User Class Numbers
Using the Locking Facility
Lock Descriptors
How Locking Works
Conditional and Unconditional Locking
Access Modes and Locking
Automatic Masters
Locking Levels
Deciding on a Locking Strategy
Choosing a Locking Level
Locking at the Same Level
Length of Transactions
Locking During User Dialog
Strong Locking and Dynamic Transactions
Choosing an Item for Locking
Examples of Locking
Add a New Customer
Update Inventory Information
Insert a New Product with a New Supplier
Interactively Modify a Customer Account Order
Issuing Multiple Calls to DBLOCK
Releasing Locks
TurboIMAGE/XL Logging Services
What User Logging Does
How User Logging Works
User Logging and Logical Transactions
Transaction Numbers
User Logging and Process Suspension
Obtaining Database Structure Information
Special Uses of DBINFO
Checking Subsystem Flag
Closing the Database or a Data Set
Checking the Status of a Procedure
Interpreting Errors
Abnormal Termination
Ch 5. TurboIMAGE/XL Library Procedures
Using TurboIMAGE/XL Intrinsics
Intrinsic Numbers
Database Protection
Unused Parameters
The Status Array
Transactions
DBBEGIN
INTRINSIC NUMBER 412
Syntax
Parameters
Discussion
Using TurboIMAGE/XL Intrinsics (Continued)
DBCLOSE
INTRINSIC NUMBER 403
Syntax
Parameters
Discussion
DBCONTROL
INTRINSIC NUMBER 411
Syntax
Parameters
Using TurboIMAGE/XL Intrinsics (Cont.)
DBCONTROL (Cont.)
Discussion
DBDELETE
INTRINSIC NUMBER 408
Syntax
Parameters
Discussion
Using TurboIMAGE/XL Intrinsics (Continued)
DBEND
INTRINSIC NUMBER 413
Syntax
Parameters
Discussion
Using TurboIMAGE/XL Intrinsics (Cont.)
DBERROR
INTRINSIC NUMBER 419
Syntax
Parameters
Discussion
DBEXPLAIN
INTRINSIC NUMBER 418
Syntax
Parameters
Discussion
Using TurboIMAGE/XL Intrinsics (Continued)
DBFIND
INTRINSIC NUMBER 404
Syntax
Parameters
Discussion
Using TurboIMAGE/XL Intrinsics (Cont.)
DBGET
INTRINSIC NUMBER 405
Syntax
Parameters
Discussion
DBINFO
INTRINSIC NUMBER 402
Syntax
Parameters
Discussion
Mode 101: Item Number
Mode 102: Item Name
Mode 103: Items in Database
Mode 104: Items in Data Set
Using TurboIMAGE/XL Intrinsics (Continued)
DBINFO (Continued)
Mode 113: BTREEMODE1 and Wildcard Character
Mode 201: Set Number
Mode 202: Set Name
Mode 203: Sets in Database
Mode 204: Sets with Item
Mode 205: Set Capacity
Mode 206: Number of Data Set Chunks
Mode 207: Size of Data Set Chunks
Mode 208: Primary and Actual Capacity
Mode 209: B-Tree Attachment
Mode 301: Paths
Mode 302: Key or Search Item
Mode 401: Logging
Using TurboIMAGE/XL Intrinsics (Cont.)
DBINFO (Cont.)
Mode 402: ILR
Mode 403: Dynamic Roll-Back
Mode 404: Logging Subsystem Information
Mode 406: Database Information
Mode 501: Subsystem Access
Mode 502: Critical Item Update
Modes 8nn: Third-Party Indexing
Mode 901: Language
DBLOCK
INTRINSIC NUMBER 409
Syntax
Parameters
Using TurboIMAGE/XL Intrinsics (Continued)
DBLOCK (Continued)
Discussion
DBMEMO
INTRINSIC NUMBER 414
Syntax
Parameters
Discussion
DBOPEN
INTRINSIC NUMBER 401
Syntax
Using TurboIMAGE/XL Intrinsics (Cont.)
DBOPEN (Cont.)
Parameters
Discussion
DBPUT
INTRINSIC NUMBER 407
Syntax
Parameters
Using TurboIMAGE/XL Intrinsics (Continued)
DBPUT (Continued)
Discussion for Master Data Sets
Discussion for Detail Data Sets
DBUNLOCK
INTRINSIC NUMBER 410
Syntax
Parameters
DBUPDATE
INTRINSIC NUMBER 406
Syntax
Parameters
Using TurboIMAGE/XL Intrinsics (Cont.)
DBUPDATE (Cont.)
Discussion
DBXBEGIN
INTRINSIC NUMBER 420
Syntax
Parameters
Discussion
DBXEND
INTRINSIC NUMBER 421
Syntax
Parameters
Discussion
Using TurboIMAGE/XL Intrinsics (Continued)
DBXUNDO
INTRINSIC NUMBER 422
Syntax
Parameters
Discussion
Ch 6. Host Language Access
Model Program
ORDERS Database Schema
Model Program Conventions
ORDERS Database Model Program
Main Body of Program
Opening the Database
Retrieving All the Records on a Chain (with Item Level Locking)
Retrieving a Data Entry Using a Record Number
Retrieving Master Data Using a Key Value
Retrieving Data Serially (with Set Level Locking)
Adding an Entry
ORDERS Database Model Program (Continued)
Updating an Entry
Deleting an Entry
Rewinding a Data Set
Obtaining Database Information
Obtaining Error Messages and Explanations
Closing the Database
C
Defining Data Types, Variables, and Intrinsics
Main Body of Program
Obtaining Error Messages and Explanations
ORDERS Database Model Program (Cont.)
C (Cont.)
Opening the Database
Retrieving All the Records on a Chain (with Item Level Locking)
COBOL II
Defining Data Types, Variables, and Intrinsics
Main Body of Program
ORDERS Database Model Program (Continued)
COBOL II (Continued)
Opening the Database
Retrieving All the Records on a Chain (with Item Level Locking)
Retrieving a Data Entry Using a Record Number
Retrieving Master Data Using a Key Value
Retrieving Data Serially (with Set Level Locking)
Adding an Entry
ORDERS Database Model Program (Cont.)
COBOL II (Cont.)
Updating an Entry
Deleting an Entry
Rewinding a Data Set
Obtaining Database Information
Obtaining Error Messages and Explanations
Closing the Database
FORTRAN 77
Defining Data Types, Variables, and Intrinsics
ORDERS Database Model Program (Continued)
FORTRAN 77 (Continued)
Main Body of Program
Obtaining Error Messages and Explanations
Opening the Database
Retrieving All the Records on a Chain (with Item Level Locking)
Pascal
Defining Data Types, Variables, and Intrinsics
Obtaining Error Messages and Explanations
ORDERS Database Model Program (Cont.)
Pascal (Cont.)
Opening the Database
Retrieving All the Records on a Chain (with Item Level Locking)
RPG
Defining Data Types, Variables, and Intrinsics
Main Body of Program
Retrieving All the Records on a Chain (with Item Level Locking)
Obtaining Error Messages and Explanations
Defining Output
Ch 7. Logging and Recovery
Logging and Recovery
Database Utilities Used in Logging and Recovery
Recovery Options
Logging and Recovery Considerations
Logical Transactions
A Definition
Locking Requirements for Logical Transactions
Locking and Transaction Interdependence
Locking Examples
Locking and Dynamic Transactions
Dynamic Roll-Back Recovery
Intrinsic Level Recovery
Logging Preparation
Step 1--Checking MPE/iX Logging Configuration
Step 2--Acquiring Logging Capability
Step 3--Logging to Tape or Disk
Step 4--Building a Log File for Logging to Disk
Step 5--Creating the Log Identifier
Step 6--Setting the Log Identifier
Step 7--Setting Flags for the Database Backup Copy
Step 8--Making a Database Backup Copy
Using DBSTORE
TurboSTORE/iX 7x24 True-Online Backup
Benefits of TurboSTORE/iX 7x24 True-Online Backup
Logging Status
Logging Maintenance
Starting the Logging Process
Re-enabling Logging
Setting Database Flags
CHANGELOG Capability
Recovering the Database
Ending the Logging Maintenance Cycle
Logging Results
Log Records
Log File Time Stamps
Roll-Forward Recovery
Enabling the Roll-Forward Feature
Restoring the Database Backup Copy
Performing Roll-Forward Recovery
Recovery from a Stream File
MPE/iX Cleanup Mode and Roll-Forward Recovery
Roll-Back Recovery
Enabling the Roll-Back Feature
Disabling the Roll-Back Feature
Performing Roll-Back Recovery
MPE/iX Cleanup Mode and Roll-Back Recovery
DBRECOV Commands Used with Roll-Forward and Roll-Back Recovery
CONTROL Command
FILE Command
PRINT Command
RECOVER Command
ROLLBACK Command
RUN Command
Recovery Tables
Post-Recovery Options
The Mirror Database
Transferring Log Files
Maintaining the Mirror Database
Performing DBRECOV STOP-RESTART
Stopping DBRECOV
Storing the Databases
Restarting DBRECOV
Aborting DBRECOV
Purging a RESTART File
Controlling the Logging Process
Log File Size
Ch 8. Using the Database Utilities
Restructuring the Database with TurboIMAGE/XL Utilities
Supported Structural Changes Using DBUNLOAD and DBLOAD
Unsupported Structural Changes Using DBUNLOAD and LOAD
Summary of Utility Routines
Utility Program Operation
Backup Files
Error Messages
DBLOAD
Operation
Parameters
Message Variables
Operation Discussion
Example
DBRECOV
Operation
Options
Example 1
Example 2
Example 3
Example 4
Text Reference
>CONTROL
Syntax
Discussion
Parameters
Text Reference
Utility Program Operation (contd)
>EXIT
Syntax
Text Reference
>FILE
Syntax
Parameters
Discussion
Example
Text Reference
>PRINT
Syntax
Parameters
Example
Text Reference
>RECOVER
Syntax
Parameters
Discussion
Example
Text Reference
>ROLLBACK
Syntax
Parameters
Discussion
Example
Text Reference
>RUN
Syntax
Discussion
Example 1
Example 2
DBRESTOR
Operation
Parameters
Operation Discussion
Example
DBSTORE
Operation
Parameters
Operation Discussion
Logging
Example
Utility Program Operation (contd.)
DBUNLOAD
Operation
Parameters
Message Variables
Operation Discussion
Example (Session Mode)
Example (Job Mode)
DBUTIL
Operation
Operation Discussion
>>ACTIVATE
Syntax
Parameter
Example
>>ADDINDEX
Syntax
Parameters
Example
>>CREATE
Syntax
Parameters
Example (Session Mode)
Example (Job Mode)
>>DEACTIVATE
Syntax
Parameter
Example
>>DETACH
Syntax
Parameters
Example
Utility Program Operation (contd)
>>DISABLE
Syntax
Parameters
Options
Default Conditions
Example
>>DROPINDEX
Syntax
Parameters
Example
>>ENABLE
Syntax
Parameters
Options
Default Conditions
Example
>>ERASE
Syntax
Parameters
Example
>>EXIT
Syntax
Example
>>HELP
Parameter
Example
>>MOVE
Syntax
Parameters
Discussion
Example
>>PURGE
Syntax
Parameters
Example
>>REBUILDINDEX
Syntax
Parameters
Example 1
Example 2
Utility Program Operation (contd.)
>>REDO
Syntax
Parameter
>>RELEASE
Syntax
Parameter
Discussion
>>SECURE
Syntax
Parameter
Discussion
>>SET
Syntax
Parameters
Example 1
Example 2
Example 3
Utility Program Operation (contd)
>>SHOW
Syntax
Parameters
Example (Show Users)
Example Discussion
Example (Show All)
Example Discussion
Example (Show Capacity)
Format of Show Device List
Example (Show Device)
Format of Show Indices
Example (Show Indices)
Format of Show Locks List
Example 1 (Show Locks)
Example 1 Discussion
Example 2 (Show Locks)
Example 2 Discussion
>>VERIFY
Syntax
Parameter
Example
Ch 9. Using a Remote Database
Access Through a Local Application Program
Method 1--Establishing Communications Link and Remote Session Interactively
Method 2--Using the COMMAND Intrinsic
Method 3--Using a Database-Access File
Creating a Database-Access File
Activating a Database-Access File
Deactivating a Database-Access File
Referencing the Database
Access Using QUERY/3000
Ch 10. Internal Structures and Techniques
Data Set Internal Structures
Pointers
Data Chains
Chain Heads
Media Records
Media Records of Detail Data Sets
Media Records of Master Data Sets
Primary Entries
Secondary Entries
Synonym Chains
Blocks and Bit Maps
Dynamic Data Set Expansion
Detail Data Sets
Master Data Sets
Scalability
Approach in Version C.07.00
Run-Time TurboIMAGE/XL Control Blocks
Local Database Access
Remote Database Access
Control Block Sizes
Internal Techniques
Primary Address Calculation
Migrating Secondaries
Space Allocation for Master Data Sets
Space Allocation for Detail Data Sets
Buffer Management
Locking Internals
Accessor Entries
Set Entries
Descriptor Entries
MPE/iX Transaction Management
Ch 11. B-Tree Indices
Overview of B-Tree Indices
Terminology
Key Points
External Commands and Utilities Affected
Root File
DBSCHEMA
New Syntax for DBSCHEMA
DBUTIL
Syntax for ADDINDEX
Syntax for DROPINDEX
Syntax for REBUILDINDEX
Discussion
Other DBUTIL Commands
New Syntax for SET
New Syntax for SHOW
DBCONTROL
Mode 13
Mode 14
Mode 15
Mode 16
DBFIND
Supported Modes of DBFIND
TPI Modes of DBFIND Not Supported for B-Tree Indices
DBFIND Modes
DBFIND Arguments
DBFIND Structured Argument
DBGET
DBINFO
Mode 113
Mode 209
DBPUT, DBDELETE, and DBUPDATE
Limits
Quick Start for Using B-Tree Indices
Ap A. Error Messages
Schema Processor Error Messages
Schema Processor File Errors
Schema Processor Command Errors
Schema Syntax Errors
Library Procedure Error Messages
Abort Conditions
I and J Files
Library Procedure File System and Memory Management
Library Procedure Calling Errors
Library Procedure Error Messages (Continued)
Library Procedure Calling Errors (Continued)
Library Procedure Error Messages (Cont.)
Library Procedure Calling Errors (Cont.)
Library Procedure Error Messages (Continued)
Library Procedure Calling Errors (Continued)
Library Procedure Error Messages (Cont.)
Library Procedure Calling Errors (Cont.)
Library Procedure Error Messages (Continued)
Library Procedure Calling Errors (Continued)
Library Procedure Error Messages (Cont.)
Library Procedure Calling Errors (Cont.)
Library Procedure Error Messages (Continued)
Library Procedure Calling Errors (Continued)
Library Procedure Exceptional Conditions
Library Procedure Error Messages (Cont.)
Library Procedure Exceptional Conditions (Cont.)
Library Procedure Error Messages (Continued)
Library Procedure Abort Condition Messages in I File
Utility Error Messages
Utility Program Conditional Messages
Utility Error Messages (Continued)
Utility Program Conditional Messages (Continued)
Utility Error Messages (Cont.)
Utility Program Conditional Messages (Cont.)
Utility Error Messages (Continued)
Utility Program Conditional Messages (Continued)
Utility Error Messages (Cont.)
Utility Program Conditional Messages (Cont.)
Utility Unconditional Error Messages
Utility Error Messages (Continued)
Utility Unconditional Error Messages (Continued)
Extended Utility Program Unconditional Messages
Utility Error Messages (Cont.)
Extended Utility Program Unconditional Messages (Cont.)
Ap B. Results of Multiple Access
Ap C. Database Design Considerations
Ap D. Multiple Calls to DBLOCK
Sort Sequence for Lock Descriptors
Conditional Locks
Remote Databases
Ap E. TurboIMAGE/XL Log Record Formats
Ap F. MPE/iX Log Record Formats
Ap G. Recovery and Logging Quick Reference
Recovery Quick Reference
Dynamic Roll-Back Recovery
Intrinsic Level Recovery (ILR)
Roll-Forward Recovery
Roll-Forward Flag Settings
Roll-Back Recovery
Roll-Back Flag Settings
Recovery
Logging Device Quick Reference
Logging to Tape
Logging to Disk
Sample Job Streams
Ap H. TurboIMAGE/XL versus TurboIMAGE/V
Overview
Moving to TurboIMAGE/XL
Intrinsic Level Recovery
Control Blocks
Status Area
Moving from MPE/iX to MPE V
Buffer Specifications
INDEX
Index (A-S)
Index (T-Z)
MPE/iX 5.5 Documentation