The SAP ASE server detects various types of exceptions.
Cardinality violations
Data exceptions
Integrity constraint violations
Invalid cursor states
Syntax errors and access rule violations
Transaction rollbacks
with check option violations
Cardinality Violations
Cardinality violations occur when a query that should return only a single row returns more than one row to an Embedded SQL™ application.
Data Exceptions
Data exceptions occur when an entry is too long for its datatype, or contains an illegal escape sequence or other format errors.
Integrity Constraint Violations
Integrity constraint violations occur when an insert, update, or delete statement violates a primary key, foreign key, check, or unique constraint or a unique index.
Invalid Cursor States
Invalid cursor states occur when a fetch uses a cursor that is not currently open, or an update where current of or delete where current of affects a cursor row that has been either modified or deleted, or not been fetched.
Syntax Errors and Access Rule Violations
Syntax errors are generated by SQL statements that contain unterminated comments, implicit datatype conversions not supported by the SAP ASE server or other incorrect syntax.
Transaction Rollbacks
Transaction rollbacks occur when the transaction isolation level is set to 3, but the SAP ASE server cannot guarantee that concurrent transactions can be serialized. This type of exception generally results from system problems such as disk crashes and offline disks.
with check option Violation
This class of exception occurs when data being inserted or updated through a view would not be visible through the view.