Initiating a Transaction
MS DTC transactions may be initiated by:
-
An application program written in C or C++.
-
A resource manager at the explicit request of an application. For example, a relational database that supports stored procedures might include a call in its stored procedure programming language that initiates an MS DTC transaction.
-
A resource manager implicitly. For example, a database that supports stored procedures might implicitly initiate an MS DTC transaction when a stored procedure updates transaction-protected resources or when it invokes a remote stored procedure in another database.
-
A response to an X/Open transaction initiated by an X/Open-compliant transaction processing monitor.
See the examples which illustrate each of these forms of transaction initiation. Each example uses a Microsoft SQL Server database called "Pubs," identical copies of which are maintained on two different systems. The examples update the address of an author on both database systems under the control of an MS DTC distributed transaction.