Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
HP.com home
Jazz home  >  Papers & Training

IMAGE/SQL: Issues and answers concerning SQL tables

» 

Jazz home

»

Software

»

Papers & Training

»

Java

»

HP Partners

»

News & Events

»

Register for more info

Content starts here
Prev Page Next Page Manual Top Home Page


5.6 How do I start a transaction?



Key points


  • Transactions are started with a BEGIN WORK statement, but the command does not need to be explicitly issued by the user. ALLBASE/SQL will automatically issue a BEGIN WORK statement if another SQL statement is executed and a transaction has not already been started.

  • Issuing explicit BEGIN WORK statements is good programming practice, and is one way to specify a value other than the default for the isolation level or the priority of the transaction (these attributes will be explained later in this module).

  • A transaction that has been started but has not been terminated is known as an active transaction.

  • ALLBASE/SQL assigns a unique id for each active transaction.

  • SYSTEM.TRANSACTION is a pseudo-table that displays all active transactions in the DBEnvironment. It includes the name of the user who started the transaction, the transaction id, and the priority of the transaction.

  • Max Transactions is a parameter in the DBECON file that limits the number of concurrent, active transactions in the DBEnvironment. This parameter can be specified in the START DBE statement, or by using the SQLUTIL ALTDBE command. The default value is 2. Two times the number of concurrent users is a good setting for Max Transactions.

  • A transaction that is started after the transaction limit has been reached is placed onto a wait queue called the throttle wait list, and is known as a throttled transaction. A throttled transaction must wait until one of the active transactions terminates or its own timeout limit is reached. All throttled transactions in the DBEnvironment can be identifed by issuing the following query from ISQL:

       SELECT * FROM SYSTEM.CALL WHERE STATUS = 'Waiting - SERVER';
    

    NOTE: The case is very important in the above command. Enter it exactly as shown.


Prev Page Next Page Manual Top Home Page

Page last updated on November 29, 1995

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 2004 Hewlett-Packard Development Company, L.P.