Académique Documents
Professionnel Documents
Culture Documents
Attributes of the PSINDEX master database are defined by using the DBD statements.
DBD statement
SEGM statement
LCHILD statement
RKSIZE=
Specifies the root key size of the target database. This parameter is required for
partitioned secondary index (PSINDEX) databases only, and is invalid for any other
database type.
If you used symbolic pointers in your non-HALDB secondary index, you must change
the PTR=SYMB specification in the indexed database DBD to PTR=INDX and either
omit the PTR parameter in the secondary index DBD or specify PTR=SNGL in it.
XDFLD statement
FIELD statement
If you use non-unique keys in your existing secondary index, you can use the /SX field to
create unique keys in your PSINDEX. HALDB PSINDEXes require unique keys.
You must change the DBDs for your secondary index databases before they are loaded as
HALDB secondary indexes. You might also need to change the DBDs of some of your indexed
databases.
Removing symbolic pointers
If you use symbolic pointers, you must remove them, because HALDB secondary indexes do not
support symbolic pointers.
Symbolic pointers are defined with a PTR=SYMB parameter on the LCHILD statements in the
non-HALDB secondary index and the indexed database DBDs. You must change the
PTR=SYMB specification in the indexed database DBD to PTR=INDX and either omit the PTR
parameter in the secondary index DBD or specify PTR=SNGL in it.
The examples in the following series of figures illustrate the changes you need to make to
remove symbolic pointers from the DBD statements. The DBD statements involved are:
The non-HALDB secondary index DBD with symbolic pointing defined.
The indexed HDAM DBD.
The following figure shows the secondary index DBD after it has been converted to HALDB.
PTR=SYMB is deleted from the LCHILD statement. RKSIZE is added to it. Symbolic pointers
are stored in the data area of index segments. Because it is not in the HALDB secondary index,
the BYTES parameter on the SEGM segment is reduced by the size of the symbolic pointer.
The following figure shows the indexed database DBD after it has been converted to HALDB.
PTR=INDX is specified on the LCHILD segment for the secondary index relationship.
If your secondary indexes use non-unique keys, complete the following steps to convert them to
unique keys:
1. Add a subsequence field by adding the /SX system-related field to the XDFLD statement
in the indexed database DBD. This field adds 8 bytes to the length of the sequence field
in the index. In the examples, the BYTES parameter in the FIELD statement is increased
by 8 bytes for this conversion.
2. On the FIELD statement, change the value of the third subparameter from M to U on the
NAME parameter. The U parameter indicates that only unique values are allowed in the
sequence field of the segment.
The following example shows a non-HALDB secondary index DBD with non-unique keys.
The following figure shows the DBD for the secondary index after it has been converted to
HALDB.