SQL - Problema con servidor vinculado

 
Vista:

Problema con servidor vinculado

Publicado por Belissa Aguilar (2 intervenciones) el 18/11/2003 22:28:26
Hola, tengo un problema a la hora de ejecutar un stored procedure que trabaja con 2 servidores, el servidor "X" (con sql server 7.0) y el servidor "Y" (con sql sever 2000 y de donde ejecuto el stored),este stored hace inserts en el servidor "Y" y deletes en el servidor "X", todas esas transacciones están dentro de un begin tran y commit
Ahora se ve que hace los inserts pero a la hora de hacer los deletes sale un mensaje de error: el proveedor OLEDB no admite este tipo de transacciones.
Pensé que era problemas de versión del sql pero probé entre 2 servidores con sql 7.0 pero sale lo mismo.
Para hacer la llamada al servidor "X" se ha creado un servidor vinculado que usa el proveedor OLEDB para sql server. También se probó correr desde el servidor "X" con su respectivo vínculo pero con el servidor que tiene también sql 7.0, y ya no hace los inserts, y peor sale este error:

Servidor: mensaje 7392, nivel 16, estado 2, procedimiento Depura_Multitex, línea 30
No se puede iniciar una transacción para el proveedor OLE DB 'SQLOLEDB'.
[OLE/DB provider returned message: Sólo puede haber una transacción activa en esta sesión.].
Agradecería de antemano si me responden a esta pregunta derrepente hay algún detalle que se está pasando por alto en los servidores porque se ha probado con varios proveedores pero sale lo mismo prácticamente.
Gracias de nuevo
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:Problema con servidor vinculado

Publicado por Isaías Islas (5072 intervenciones) el 18/11/2003 22:46:06
Consulte la documentación de SQL en Microsoft, habla sobre transacciones distribuidas:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/trblsql/tr_reslsyserr_2_0a5u.asp

En lugar de hacer el DELETE directo, ejecute un Store al servidor vinculado

-- Transaccion distribuida

BEGIN TRAN MyTransaccion
DELETE MyServer.MyBase.dbo.MyTabla WHERE........
COMMIT TRAN MyTransaccion

-- No distribuida
BEGIN TRAN MyTransaccion
EXECUTE MyServer.MyBase.dbo.pr_MyProcedimiento........
COMMIT TRAN MyTransaccion
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

RE:Problema con servidor vinculado

Publicado por Belissa Aguilar (2 intervenciones) el 19/11/2003 00:50:28
Hola Isaias, entré a la página que me recomendastes y he visto que se puede cambiar el valor del parámetro XACT_ABORT, lo cambié con el valor de OFF para que pueda seguir ejecutando las transacciones y sí corrió!!, porsiacaso el delete está dentro de un stored y lo hemos corrido también en el servidor vinculado y también había salido ese mismo error.
De todas formas lo hemos vuelto a cambiar el valor del parámetro en ON para que no sucedan otros problemas. Muchas gracias por la sugerencia!, mas bien qué otras configuraciones son necesarias para copiar información entre servidores con versiones diferentes de SQL?
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

RE:Problema con servidor vinculado

Publicado por Isaías Islas (5072 intervenciones) el 19/11/2003 00:58:26
Yo tengo el mismo escenario que ustedes y no tengo problema alguno, solo que he cuidado que no existan TRANSACCIONES DISTRIBUIDAS, tal cual te lo mencione, ejecuto procedimientos entre servidores.

Saludos.
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