The facility for changing check pending status forcibly changes the check pending status; this facility does not check the integrity of referential constraints or check constraints. This facility provides two functions, forced setting of check pending status and forced release of check pending status.
The facility for changing check pending status forcibly can be executed by table to update all referential constraints and check constraints defined for a table, or by constraint to update only an individual constraint.
When the facility for changing check pending status forcibly is executed, information about the check pending status in data dictionary tables changes. The following table lists the locations in data dictionary tables where the check pending status changes.
Table 13-16 Locations in data dictionary tables where check pending status changes
Exe unit | -c option spec | Table constraint | Locations in data dictionary table where check pending status changes | ||||
---|---|---|---|---|---|---|---|
Ref const | Check const | SQL_TABLES table | SQL_REFERENTIAL_CONSTRAINTS table | SQL_CHEKS table | |||
CHECK_PEND column | CHECK_PEND2 column | CHECK_PEND column | CHECK_PEND2 column | ||||
By table | Not applicable | No | Yes | -- | Y | -- | Y#1 |
Yes | No | Y | -- | Y#1 | -- | ||
Yes | Yes | Y | Y | Y#1 | Y#1 | ||
By constraint | Ref const | Yes | No | Y | -- | Y#2 | -- |
Yes | Yes | Y | -- | Y#2 | -- | ||
Check constraint | No | Yes | -- | Y | -- | Y#2 | |
Yes | Yes | -- | Y | -- | Y#2 |
The following table lists the locations of table information in an RDAREA where check pending status changes.
Table 13-17 Locations of table information in an RDAREA where check pending status changes
Execution unit | -c option spec | Table constraint | Locations of table information in an RDAREA where check pending status changes | ||
---|---|---|---|---|---|
Referential constraint | Check constraint | Referential constraint status | Check constraint status | ||
By table | Not applicable | No | Yes | -- | Y |
Yes | No | Y | -- | ||
Yes | Yes | Y | Y | ||
By constraint | Referential constraint | Yes | No | Y | -- |
Yes | Yes | Y | -- | ||
Check constraint | No | Yes | -- | Y | |
Yes | Yes | -- | Y |
When the facility is executed by table, it changes all the defined referential constraints or check constraints. You specify the -t option to execute the facility by table.
You use execution by table in the following case:
The facility changes only one referential constraint or check constraint defined for the table. You specify the -c option to execute the facility by constraint.
You use execution by constraint in order to change the check pending status for an individual constraint.
This function places a table, constraints, and RDAREAs in check pending status.
This function releases a table, constraints, and RDAREAs from check pending status. The setting (whether or not the check pending status can be released) depends on the execution unit of pdconstck and the check pending status of the table, constraints, and RDAREAs. The following provides the details for each execution unit.
Table 13-18 Changes in the check pending status by constraint (forced release of check pending status)
Condition | Check pending status (table and RDAREA) | |
---|---|---|
A constraint that is not specified in the -c option is defined | There is a constraint in check pending status | No change |
All constraints are in non-check pending status | Non-check pending status | |
Only the constraint specified in the -c option is defined for the table | Non-check pending status |