INFO: Retaining Transactions with Transaction Object
Article ID: 171613
Article Last Modified on 10/15/2003
APPLIES TO
- Microsoft OLE DB 1.1
- Microsoft OLE DB Provider for ODBC 1.1
This article was previously published under Q171613
SUMMARY
This article explains the relationship of retaining transactions and
transaction object.
MORE INFORMATION
An OLE DB application can use ITransactionLocal::StartTransaction to begin
a transaction if the transaction object is supported by providers.
ITransactionLocal is an interface on the session object, and can be
QueryInterface from any other interface on the session object. Information
regarding a transaction can be retrieved by calling the GetTransactionInfo
method.
The Commit or Abort method of the transaction object can be used to commit
or abort a transaction. The Commit and Abort methods allow you to specify
whether or not to retain a transaction. If you do not retain the
transaction object, a new transaction will not be started after the
original transaction is finished, and the transaction object will become
inactive. The only valid action for the transaction object will be to
release it. To retain a transaction, set fRetaining flag to TRUE in the
Commit or Abort method.
The OLE DB Provider for ODBC version 1.1 supports transaction object and commit/abort retaining. Transactions can be committed synchronously, asynchronously, or two-phased, depending on the setting of XACTTC flag. With fRetaining set to TRUE, however, the XACTTC flag must be set to zero. The OLE DB Provider for ODBC version 1.1 does not support any setting of XACTTC flag when fRetaining set to TRUE.
Additional query words: ado preserve cursor active data objects
Keywords: kbinfo kbprogramming KB171613