HPlogo ALLBASE/SQL C Application Programming Guide: HP 3000 MPE/iX Computer Systems > Chapter 9 Programming with Constraints

Comparing Statement Level and Row Level Integrity

» 

Technical documentation

Complete book in PDF
» Feedback

 » Table of Contents

 » Index

In ALLBASE/SQL release E.1, enforcement of defined constraints is performed at statement level rather than at the row level of previous releases. This is called statement level integrity. Even though a constraint may be violated on a particular row, the check for that constraint is not made until the statement has completed processing. At that time, if there are one or more constraint errors, an error message is issued and the entire statement is rolled back with no rows being processed. You do not need to detect constraint errors yourself and code your program to respond to partially processed tables.

When a statement is rolled back, the appropriate sqlerrd field will be 0, reflecting that no rows were processed. If a constraint error is the cause of the rollback, this field will not be greated than zero indicating a partially processed table. Thus, applications written for ALLBASE/SQL may need to check for a different value in the sqlerrd field.

For information on status checking, see the chapter, "Runtime Status Checking and the sqlca." For information on deferring constraint error checking to the transaction level and other error checking enhancements related to releases after E.1, see the ALLBASE/SQL Release F.0 Application Programming Bulletin for MPE/iX.

Feedback to webmaster