Author |
Topic |
u951503
Starting Member
3 Posts |
Posted - 2004-02-23 : 07:06:08
|
Hi from Italy,sorry for my englishi have a problem with a trigger.i linked "correctly" two sql 2000 server- friuliweb and polimar, if i run the query below from polimar INSERT INTO FRIULIWEB.ADLog.DBO.WEB_AD_Log1 (ID_LOG, ACCOUNT, UTENTE, DATA, IP, GRUPPO_NIM, FUNZIONE)SELECT ID_LOG, ACCOUNT, UTENTE, DATA, IP, GRUPPO_NIM, FUNZIONE FROM FROM WEB_AD_Log1 WHERE ID_LOG =1i'have no problem .if i insert the "same" query in a trigger in polimarCREATE TRIGGER _INSERT ON [dbo].[WEB_AD_Log1] FOR INSERTASINSERT INTO FRIULIWEB.ADLog.DBO.WEB_AD_Log1 (ID_LOG, ACCOUNT, UTENTE, DATA, IP, GRUPPO_NIM, FUNZIONE)SELECT ID_LOG, ACCOUNT, UTENTE, DATA, IP, GRUPPO_NIM, FUNZIONE FROM FROM INSERTEDthe error is...error 7312 - New transaction cannot enlist in the specified transaction coordinatorerror 7300 - 'SQLOLEDB' ITransactionJoin::Join Transaction returned 0x8004d00aerror 7391 - The operation could not be performed because the OLE DB Provider 'SQLOLEDB' was unable to begin a distributed transaction.The DTC service is running.I dont know....Plese help me Tanks |
|
nr
SQLTeam MVY
12543 Posts |
Posted - 2004-02-23 : 07:18:30
|
A trigger runs inside a transaction and this is causing your problem.You will probably need to set xact_abort on but this probably won't cure it.Do a search - there are lots of threads investigating this problem.==========================================Cursors are useful if you don't know sql.DTS can be used in a similar way.Beer is not cold and it isn't fizzy. |
|
|
u951503
Starting Member
3 Posts |
Posted - 2004-02-23 : 07:34:35
|
Thanks,I searched but nothing to do ..... |
|
|
harshal_in
Aged Yak Warrior
633 Posts |
Posted - 2004-02-23 : 07:47:33
|
check if there exists a firewall between the two servers which is blocking the portHe is a fool for five minutes who asks , but who does not ask remains a fool for life! |
|
|
nr
SQLTeam MVY
12543 Posts |
Posted - 2004-02-23 : 07:54:28
|
Searching in google for"the OLE DB Provider 'SQLOLEDB' was unable to begin a distributed transaction"add trigger to the search to narrow it down maybe.Brings up loads of hits.A couple of things I think I remember causing problems:The remote server is actually a link to the local server.@@servername is null.A firewall is preventing RPC from initiating a connection from the remote server.==========================================Cursors are useful if you don't know sql.DTS can be used in a similar way.Beer is not cold and it isn't fizzy. |
|
|
u951503
Starting Member
3 Posts |
Posted - 2004-02-23 : 10:28:46
|
No firewall is present.@@servername in not null.The remote server is linked to the local server.local server POLIMAREXEC sp_addlinkedserver @server = 'FRIULIWEB', @provider = 'SQLOLEDB', @srvproduct = 'OLE DB Provider for Jet',@datasrc = 'FRIULIWEB',@provstr = 'DRIVER={SQL SERVER};SERVER=POLIMAR;'GOI use a remote account trusted. |
|
|
nr
SQLTeam MVY
12543 Posts |
Posted - 2004-02-23 : 11:15:52
|
>> The remote server is actually a link to the local server.meant that the local and remote server are actually the same server which causes problems - you obviously don't have this.Try posting the problem again with a link to this thread - people may not look at this as it has a few responses.Put the things you have checked in the new post.==========================================Cursors are useful if you don't know sql.DTS can be used in a similar way.Beer is not cold and it isn't fizzy. |
|
|
DMcCallie
Yak Posting Veteran
62 Posts |
Posted - 2007-12-05 : 11:54:43
|
http://support.microsoft.com/kb/839279I had the same issue after upgrading one of my servers from SQL/2000 to SQL/2005. Step 2 note "i" resolved my issue (Under the Transaction Manager Communication group, click to select the No Authentication Required option)...DeWayne |
|
|
|