Transactions on ODBC Data Sources in Visual Basic Version 3.0 (101518)



The information in this article applies to:

  • Microsoft Visual Basic Standard Edition for Windows 2.0
  • Microsoft Visual Basic Standard Edition for Windows 3.0
  • Microsoft Visual Basic Professional Edition for Windows 2.0
  • Microsoft Visual Basic Professional Edition for Windows 3.0

This article was previously published under Q101518

SUMMARY

Under the ExecuteSQL method, transactions are unsupported against ODBC data sources. Even though a transaction may be started by a Visual Basic application and this transaction space is global to all database objects, the transaction space on database objects does not include actions by the ExecuteSQL method against remote ODBC data sources such as SQL Server or Oracle.

MORE INFORMATION

When you use the ExecuteSQL method or the passthrough property on dynasets, Visual Basic version 3.0 dispatches the SQL code directly to the ODBC data source through the ODBC driver. Therefore, it does not offer any transaction support in terms of CommitTrans or Rollback even though the ODBC driver for that data source might support transactions. This behavior is by design.

The following example illustrates the behavior in Visual Basic version 3.0. The code in the example uses the ExecuteSQL method to delete all rows from the table even though a rollback is issued.
Dim D as Database
Set D = Opendatabase ' an ODBC data source such as Oracle
Begintrans
D.Executesql("delete from sometable")
Rollback
				

Modification Type:MajorLast Reviewed:12/9/2003
Keywords:KB101518