PartitionBase Definition
The example for object 9401 contains a DB2 BEFORE
INSERT trigger to populate PARTITION_COLUMN. This is always defined
by the SpecialCol keyword in a PartitionBase section. The syntax for
the trigger implements the column PARTITION_COLUMN to S_ADDR_ORG as CHAR(2) NOT NULL
with default of a space. It also implements
a trigger to populate the partitioning column.
[Object 9401]
Type = PartitionBase
Name = S_ADDR_ORG
Partitions = 10
SpecialCol = PARTITION_COLUMN WCHAR(2) NOTNULL DEFAULT ' '
Function = BEGIN ATOMIC SET N.PARTITION_COLUMN = RIGHT(DIGITS(INT(MOD(RAND()*
9991, 10)) + 1), 2); END
Column 1 = PARTITION_COLUMN ASC
The performance overhead of using a trigger is measured as a percentage of the inserts. Performance overhead depends on several factors, including row length and the number of indexes in the table.
Triggers that use the S_PARTY partitioned table space, 10 partitions, 14 columns, and 443 bytes with 8 indexes, have demonstrated a performance overhead of less than 1% for each insert.