Limited supportBMC provides limited support for this version of the product. As a result, BMC no longer accepts comments in this space. If you encounter problems with the product version or the space, contact BMC Support.BMC recommends upgrading to the latest version of the product. To see documentation for that version, see LOADPLUS for DB2 13.1.

Considerations for check constraints


For most load jobs, LOADPLUS enforces Db2-defined check constraints based on the ENFORCE option that is in effect.

When enforcing constraints, LOADPLUS verifies the constraints and discards any violations. For more information about the ENFORCE options, see ENFORCE.  

SQLAPPLY load jobs

For SQLAPPLY load jobs, if Db2-defined check constraints exist for a table that you are loading, the High-speed Apply architecture automatically checks these constraints and discards any violations. LOADPLUS ignores the ENFORCE option for this type of load job. 

DSNUTILB load jobs

When LOADPLUS invokes DSNUTILB, check constraint checking is handled by DSNUTILB. However, the IBM Db2 LOAD utility ENFORCE options are CONSTRAINTS and NO. If you specify ENFORCE CHECK CONSTRAINTS, LOADPLUS cannot convert that option to an appropriate IBM option, so LOADPLUS issues message BMC50178E and terminates. 

FORMAT BMCUNLOAD

For all types of load jobs except an SQLAPPLY load, LOADPLUS does not verify check constraints when you specify FORMAT BMCUNLOAD.

Important

If you specify ENFORCE CONSTRAINTS in this case, LOADPLUS checks only referential constraints.

DEFINE NO objects

If you are loading a table whose table space or index spaces are defined with DEFINE NO and a check constraint exists on the table, LOADPLUS attempts to build a row that satisfies the check constraint while materializing the table. However, if LOADPLUS cannot resolve the check constraint, LOADPLUS issues messages BMC51492W, which describes the check constraint that it cannot resolve, and BMC51491E, then terminates.

To load this table, you must manually materialize the associated data sets and restart the load job. 

Identity columns

If you are loading an identity column that either contains a check constraint or is referenced in the check condition of a Db2 check constraint and both of the following conditions also exist, LOADPLUS terminates:

  • ENFORCE CONSTRAINTS or ENFORCE CHECK CONSTRAINTS is in effect.
  • The identity column definition and LOADPLUS field specification for the identity column could result in LOADPLUS generating values. 

Constraint content restrictions

The following restrictions apply to the content of your check constraints:

  • When you use a signed token, do not place a space between the sign and the value.
  • If check constraint conditions contain one or more of the following constant types, LOADPLUS terminates:
    • Floating-point constants
    • Constants whose length is greater than 254 bytes

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*