This is instructions on how to enable XA transactions support for the MS SQL 2000 and 2005 databases.
(The original document is located at: http://msdn2.microsoft.com/en-us/library/aa342335.aspx)

The following steps are required if you want to use XA data sources together with MS DTC for handling distributed transactions.

Running the MS DTC Service
~~~~~~~~~~~~~~~~~~~~~~~~~~
The MS DTC service should be marked Automatic in Service Manager to make sure that it is running when the SQL Server service is started. 
To enable MS DTC for XA transactions, you must follow these steps:
 1. From Control Panel, open Administrative Tools, and then open Component Services.
 2. Expand Component Services, right-click My Computer, and then select Properties.
 3. Click the MSDTC tab, and then click Security Configuration.
 4. Select the Enable XA Transactions check box, and then click OK. This will cause a MS DTC service restart.
 5. Click OK again to close the Properties dialog box, and then close Component Services.
 6. Stop and then restart SQL Server to ensure that it syncs up with the MS DTC changes.

Configuring the JDBC Distributed Transaction Components
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
You can configure the JDBC driver distributed transaction components by following these steps:
 1. Copy the sqljdbc_xa.dll from the JDBC installation directory to the Binn directory of every SQL Server computer that will participate in distributed transactions.
    Note: If you are on a 32-bit processor, use the sqljdbc_xa.dll file in the x86 folder. 
          If you are on a 64-bit processor, use the sqljdbc_xa.dll file in the x64 folder. 
 2. Execute the database script xa_install.sql on every SQL Server instance that will participate in distributed transactions. 
    This script installs sqljdbc_xa.dll as an extended stored procedure. You will need to run this script as an administrator of the SQL Server instance.

Configuring the User-Defined Roles
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To grant permissions to a specific user to participate in distributed transactions with the JDBC driver, add the user to the SqlJDBCXAUser role. 
For example, use the following Transact-SQL code to add a user named 'qwapp' to the SqlJDBCXAUser role:

USE master 
GO 
EXEC sp_grantdbaccess 'qwoss', 'qwoss' 
GO 
EXEC sp_addrolemember [SqlJDBCXAUser], 'qwoss'
