Article ID: 177138 - Last Review: December 5, 2003 - Revision: 4.2 INFO: Nested Transactions Not Available in ODBC/OLE DB/ADOThis article was previously published under Q177138 On This PageSUMMARY Neither Open Database Connectivity (ODBC), nor Microsoft
OLE DB Provider, supports Nested Transactions. ActiveX Data Objects (ADO)
supports the feature, but only if the underlying provider exposes it. Currently
only the Jet OLE DB provider supports Nested Transactions. MORE INFORMATION Neither ODBC, nor any released OLE DB Provider, exposes
Nested Transaction functionality, even if the back-end data source supports
this feature. Nested Transactions are a feature of the Jet engine, but only when accessing the Jet engine directly via Data Access Objects (DAO). If using DAO against a Microsoft database (MDB) file that has an attached ODBC Data Source, any attempt to use nested transactions is ignored. The ADO Help indicates that ADO supports nested transactions but only if the underlying OLE DB Provider supports nested transactions. The following Microsoft Providers do not support Nested Transactions: OLE DB Provider for ODBC Drivers Index Server Provider for OLE DB Active Directory Provider for OLE DB Sample CodeBelow is the error message and the code snippet that generates the error for ADO when the underlying provider does not support nested transactions: Run-time error '-2147168237
(8004d013)': Only one transaction can be active on this session. REFERENCEShttp://msdn.microsoft.com/en-us/data/aa937729.aspx
(http://msdn.microsoft.com/en-us/data/aa937729.aspx)
The Microsoft Jet Database Engine Programmer's Guide (Second
Edition), page 425 - "Nesting of transactions", MS Press. APPLIES TO
| Article Translations
|
Back to the top
