SQL Server - Transacciones distribuidas

 
Vista:

Transacciones distribuidas

Publicado por Ricardo (7 intervenciones) el 27/06/2007 16:39:05
Hola: estoy intentando replicar datos de un servidor a otro por medio de triggers. Las tablas con triggers de insercion se encuentran en mi servidor local y la finalidad es mandar los datos de dichas tablas a unas tablas casi iguales en el servidor remoto.

El problema es que al hacer la insercion en las tablas remotas desde el trigger local, desde cierta aplicacion me genera un error y me hace rollback.

Cabe anotar que el servidor remoto ya esta vinculado al mio, y creo que el error es por activar la opcion de rollback automatico a transacciones implicitas (SET XACT_ABORT ON). Al activar esta opcion y ejecutar un insert explicito desde el analizador de consultas los datos pasan al servidor remoto sin problema, es decir el trigger no genera error. Pero cuando lo hago desde aplicacion lo unico que me detecta la traza es un ".....IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION", que es donde se genera el error.

Por otro lado si desactivo la opcion XACT_ABORT a OFF, me genera el siguiente error y no me deja insertar los datos ni si quiera en la tabla local:

[OLE/DB provider returned message: Cannot start more transactions on this session.]
Msg 7395, Level 16, State 2, Procedure TRG_INSPATHS, Line 21
No se puede iniciar una transacción anidada para el proveedor OLE DB 'SQLOLEDB'. Es necesaria una transacción anidada porque la opción XACT_ABORT era OFF.

Mi servidor local es SQL SERVER 2000 y el remoto es SQL SERVER 2005

Cualquier ayuda la agradezco, gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Transacciones distribuidas

Publicado por Yeko (1 intervención) el 22/01/2008 20:54:50
Cambia los insert explicitos por stored procedure en el servidor remoto y desde el local lo mandas a llamar...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar