PRB: Microsoft Access (Jet) Is Not an MTS Compatible Database (167743)



The information in this article applies to:

  • Microsoft Transaction Server 1.0
  • Microsoft Transaction Server 2.0
  • Microsoft COM+ 1.0

This article was previously published under Q167743

SYMPTOMS

Microsoft Access (Jet) is not a Microsoft Transaction Server Resource Manager. Therefore, all work done inside a Transaction Server component is not part of that component's transaction. Furthermore, Microsoft Access (Jet) does mot support enlistment with the Microsoft Distributed Transaction Coordinator (DTC). As such, you cannot use Microsoft Access within a component used by Transaction Server.

CAUSE

If an object is participating in a transaction, it tries to enlist all its ODBC connections in that transaction. When it tries to do this with the Microsoft Access data source, it fails because the Microsoft Access data source does not support DTC, and cannot be enlisted in a transaction. As a result, any attempt to connect to Microsoft Access fails through the call to SQLDriverConnect().

RESOLUTION

If you want your components to access databases, use Microsoft SQL Server, version 6.5 or later, or another Microsoft Transaction Server compatible database.

STATUS

This behavior is by design.

REFERENCES

For more information, see the following Microsoft Web site:

Modification Type:MinorLast Reviewed:3/3/2005
Keywords:kbprb kbprogramming KB167743