How Integrities Are Used
Immediately after you define an integrity object, the table is checked to make sure that the condition is true for all existing rows. If not, an error is returned, and the integrity object is rejected. If your table is very big, it takes some time to scan each row to determine whether the integrity can be applied.
After successfully creating an integrity object, all subsequent operations on the table must satisfy the specified condition. Changes to the database (that is, updates, inserts, and deletes) that are not applied because of an integrity violation are not specifically flagged or reported as errors--they are simply not performed:
• If a change applies to a set of rows, this means that only some of the rows were actually updated.
• If the change is for a single row, a returned row count of zero is a clue that the update did not take place.