Accessing and Changing Relational Data

Distributed Queries and Distributed Transactions

Microsoft® SQL Server™ allows you to create links to OLE DB data sources called linked servers. After linking to an OLE DB data source, you can:

Each distributed query can reference multiple linked servers and can perform either update or read operations against each individual linked server. A single distributed query can perform read operations against some linked servers and update operations against other linked servers. In general, Microsoft SQL Server requires distributed transactions support from the corresponding OLE DB provider whenever data from more than one linked server are likely to be updated in a transaction. Hence, the types of queries that are supported against linked servers depend on the level of support for transactions present in the OLE DB providers. OLE DB defines two optional interfaces for transaction management:

If a distributed query is executed when the connection is in autocommit mode, these rules apply:

If a distributed query is against a distributed partitioned view or if it is executed when the connection is in either an explicit or implicit transaction, these rules apply:

The above rules imply the following restriction for providers that do not support nested transaction: update operations are allowed in a distributed transaction only if the XACT_ABORT option is ON.

See Also

Distributed Queries