The basic procedure for both BMC Compatibility Mode and CA Native Mode is to:
- Run a REORG to create an UNLOAD dataset of the original database.
- Copy the current DBD to a temporary library.
- Perform a DBD Gen after making the desired changes to the DBD.
- Run a REORG using the UNLOAD dataset created in step 1 as the input and the new changed DBD from step 2 to reload the database.
Some additional things that should be considered:
- You would need to add DBDCHANGE(Y) to the BMC control cards for the compatibility reload or DBDCHANGE=YES for the native mode reload. The syntax you would use would be dependent on the syntax of the rest of the control cards; AMS style or native mode style.
- If the randomizer or the database access method (HDAM to HIDAM or vice versa) is being changed then there is also more involved. Specifically you would need to add HDSORT=YES to the control card set and SORTWKxx DDs. The reason for this is that Reload requires the segments to be in the unload file be in hierarchical sequence. Changes to randomizer or database access method changes the database hierarchy. HDSORT will, based on the DBD and randomizer, rearrange the records in the unload file into the new hierarchical sequence and Reload will be happy.
The hierarchy for HIDAM differs from HDAM and, the randomizer or randomizer parameters change the database hierarchy too. So changing any of those upsets Reload. HDSORT solves that as well.
For HIDAM databases the record hierarchy in the database is based on root segment key, that is EBCDIC sort order. Database record with root key A comes before B, which comes before C, etc. This method is most effective for processing records in ascending key sequence.
For HDAM databases the record hierarchy is based upon a randomizing algorithm that takes the root key and randomly assigns it a place in a given database space (the Root Addressable Area or RAA). The objective is to evenly distribute the records across the database space. This method is most effective for random access to records.