Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 572
  • Last Modified:

DISTRIBUTED TRANSACTION HELP

I try to use disrtibuted transaction. First,I use MSDASQL successfull:

set XACT_ABORT on
set ANSI_NULL_DFLT_ON on
set ANSI_WARNINGS on
BEGIN DISTRIBUTED TRANSACTION
select * from OPENDATASOURCE('MSDASQL','DRIVER={SQL Server};SERVER=192.168.2.1;UID=sa;PWD=PASSWORD;').pubs.dbo.jobs
commit tran

Then I try to use SQLOLEDB, But failure:

set XACT_ABORT on
set ANSI_NULL_DFLT_ON on
set ANSI_WARNINGS on
BEGIN DISTRIBUTED TRANSACTION
select * from OPENDATASOURCE('SQLOLEDB','Data Source=192.168.2.1;User ID=sa;Password=PASSWORD').pubs.dbo.jobs
commit tran

I get the following error message:
The operation could not be performed because the OLE DB
provider 'SQLOLEDB' was unable to begin a distributed
transaction.
[OLE/DB provider returned message: New transaction cannot
enlist in the specified transaction coordinator. ]
OLE DB error trace [OLE/DB Provider 'SQLOLEDB'
ITransactionJoin::JoinTransaction returned 0x8004d00a].



but I run the code use SQLOLEDB without DISTRIBUTED TRANSACTION success:

select * from OPENDATASOURCE('SQLOLEDB','Data Source=192.168.2.1;User ID=sa;Password=PASSWORD').pubs.dbo.jobs


WHY? Please help me!
0
tomcom
Asked:
tomcom
  • 2
1 Solution
 
Anthony PerkinsCommented:
Check out this article from MSDN:
FIX: MS DTC Limited to 16 Nodes in Single Distributed Transaction
http://support.microsoft.com/default.aspx?scid=kb;en-us;295086

Anthony
0
 
Anthony PerkinsCommented:
Do you need any more help with this question?
0

Featured Post

New feature and membership benefit!

New feature! Upgrade and increase expert visibility of your issues with Priority Questions.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now