|
|
IMAGE/SQL Administration Guide: HP 3000 MPE/iX Computer Systems > Appendix D SQL ExceptionsSQL Statements with Exceptions |
|
SQL archive logging does not capture modifications made to IMAGE/SQL databases. TURBOSTORE Online Backup requires special procedures when TurboIMAGE/XL databases (and therefore IMAGE/SQL databases) are in use during the store operation. IMAGE/SQL transactions are managed by using the TurboIMAGE/XL intrinsics DBXBEGIN and DBXEND. The BEGIN WORK statement does not invoke DBXBEGIN until the first modification or repeatable read is requested for an IMAGE/SQL table. The priority specified in a BEGIN WORK statement is ignored by IMAGE/SQL. IMAGE/SQL uses priority 100 for all lock requests involving IMAGE/SQL tables. If isolation level RR (repeatable read), CS (cursor stability), or RC (read committed) is specified and the IMAGE/SQL user has a MODE attribute of 1, 2, 3, or 4, all read operations within the transaction will be repeatable reads. If isolation level RU (read uncommitted) is specified, all read operations within the transaction will be read-uncommitted. Contents of log buffers are written to the log file or files, but contain no IMAGE/SQL work. Data buffers containing changed pages are written to DBEFiles, but contain no IMAGE/SQL data. The KEEP CURSOR option of the OPEN statement cannot be used with a cursor that references an IMAGE/SQL table. Because KEEP CURSOR does not apply to IMAGE/SQL tables, COMMIT WORK:
COMMIT WORK ends an IMAGE/SQL transaction by calling DBXEND and then calls DBUNLOCK to release all locks acquired during the transaction. CREATE INDEX cannot be used to create an index on an IMAGE/SQL table. The command
invokes this error:
A cursor that references an IMAGE/SQL table (in the QueryEXPRESSION or StatementName of the FOR clause) cannot be opened with the KEEP CURSOR option of the OPEN statement. If SQL detects an error during a DELETE statement that references an IMAGE/SQL table, the current transaction is aborted regardless of the setting of the SET DML ATOMICITY and SET CONSTRAINTS statements. The set of rows to be affected by the DELETE statement is determined before any rule fires, and this set remains fixed until completion of the rule. If the rule adds to the set, the additional rows will not be deleted. If the rule deletes from the set, a TurboIMAGE/XL intrinsic error will result and the current transaction will be aborted. If an error occurs during the processing of any rule considered during execution of this statement, the current transaction will be aborted. DROP TABLE cannot be used to drop an IMAGE/SQL table. An IMAGE/SQL table can be dropped only by detaching the database with the IMAGE/SQL DETACH statement. Cannot be used to drop a view created by IMAGESQL. A view created by IMAGE/SQL can be dropped only by detaching the database with the IMAGE/SQL DETACH command. If SQL detects an error during an INSERT statement that references an IMAGE/SQL table, the current transaction is aborted regardless of the setting of the SET DML ATOMICITY and SET CONSTRAINTS statements. If an error occurs during the processing of any rule considered during execution of this statement, the current transaction will be aborted. IMAGE/SQL columns are defined as NOT NULL with default values. Default values are based on IMAGE/SQL item types. If columns are omitted from the column name list of an INSERT statement, the missing columns will be defined using the default values. The default values are listed in Table 2-5 “IMAGE/SQL Default Data Types”. A cursor referencing an IMAGE/SQL table (in the QueryExpression or StatementName of the DECLARE CURSOR statement) cannot be opened with the KEEP CURSOR option. IMAGE/SQL columns are defined as NOT NULL. The INDICATOR option of the OPEN statement therefore cannot be used with IMAGE/SQL. Savepoints cannot be defined in an IMAGE/SQL transaction. The TO clause of ROLLBACK WORK therefore cannot be used with an IMAGE/SQL transaction. IMAGE/SQL columns are defined as NOT NULL. The INDICATOR option of the SELECT statement therefore cannot be used with IMAGE/SQL. If a modification error occurs within an IMAGE/SQL transaction, the current transaction is aborted regardless of the setting of SET CONSTRAINTS. If a modification error occurs within an IMAGE/SQL transaction, the current transaction is aborted regardless of the setting of SET DML AUTOMICITY. The default DBEFile size of 150 pages used by START DBE NEW may not be sufficient to allow a database to be attached with IMAGESQL. If ALLBASE/SQL detects an error during an UPDATE statement that references an IMAGE/SQL table, the current transaction is aborted regardless of the setting of the SET DML ATOMICITY and SET CONSTRAINTS statements. The set of rows to be affected by the UPDATE statement is determined before any rule fires, and this set remains fixed until completion of the rule. If the rule adds to the set, the additional rows will not be updated. If the rule deletes from the set, a TurboIMAGE/XL intrinsic error will result and the current transaction will be aborted. If an error occurs during the processing of any rule considered during execution of this statement, the current transaction will be aborted. IMAGE/SQL columns are defined as NOT NULL. The NULL option of the SET clause therefore cannot be used with IMAGE/SQL columns. If an IMAGE/SQL column specified in an UPDATE statement corresponds to a search or sort item in a TurboIMAGE/XL detail data set, the database's Critical Item Update flag must be set to ON. If an IMAGE/SQL column specified in an UPDATE statement corresponds to a search item in a TurboIMAGE/XL detail data set and the corresponding master data set is a manual master, the new column value must already exist as a chain head in the master data set. |
|