Using the old and new versions of both the DBCOM and the SIA, BALTER determines, in the analysis phase, the differences between the old and the new schema description and checks that all the modifications are permissible.
At the end of the analysis phase BALTER offers an optional logging function which logs the following to SYSLST (see "REPORT statement", table 42 of "BALTER statements"): the user realms that will be added, deleted and needed during restructuring, as well as the modifications to be made to stored data in the order in which they are subsequently carried out in the restructuring phase.
This analysis listing indicates how much free memory space BALTER requires for individual restructuring operations in the database, and whether any of the planned modifications are illegal.
It is therefore important that you output the analysis listing and to read through it carefully, and that you save any need user realms that have not yet been saved before you initiate restructuring.
Create the new keys with DUPLICATES ARE ALLOWED.
Assign unique values or value combinations to the new keys (e.g. by using the DML statement MOVE).
Then change the definition of the key to DUPLICATES ARE NOT ALLOWED.
Figure 28: System environment in the analysis phase
BALTER issues error messages and warnings via SYSOUT if illegal modifications are planned (see section "Description of BALTER messages"). If REPORT IS YES is specified, BALTER outputs information on which realms are needed and which realms are not needed to SYSOUT.