Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   SQL Server (http://www.forosdelweb.com/f87/)
-   -   problemas con OPENQUERY (http://www.forosdelweb.com/f87/problemas-con-openquery-569221/)

ealdui 25/03/2008 18:23

problemas con OPENQUERY
 
Estimados mi problema es el siguiente tengo un server 2005 y otro 2000 resulta que he linkeado los dos servers cuando ejecuta las siguientes instrucciones

SELECT COUNT(*) FROM server.bd.owner.tabla WHERE Codigo = @Codigo

INSERT INTO OPENQUERY (linkedSERVER, 'SELECT * FROM bd.owner.tabla')
(campo1, campo2, campoN )
VALUES (@campo1, @campo2, @campoN)

en el management studio salen ok inserta y todo muy bien pero cuando lo corror desde mi aplicacion me sale el siguiente mensaje

El proveedor OLE DB "SQLNCLI" para el servidor vinculado "SERVER_SQL" devolvió el mensaje "El administrador de transacción asociada ha deshabilitado su soporte para transacciones de red o remotas.".


he probado de todo espero me puedan dar la mano con esto saludos

PD: la aplicacion esta echa en vb 6

Andres95 26/03/2008 08:08

Re: problemas con OPENQUERY
 
Solo como comentario en tu insert seria bueno agregarle un filtro que modo que el openquery no traiga ningun registro, solo el esquema, asi como posteaste la insercion se tardara mas a medida que los registros de la tabla en cuestion se incrementen...

Código:

INSERT INTO OPENQUERY (linkedSERVER, 'SELECT * FROM bd.owner.tabla Where 1<> 1')
(campo1, campo2, campoN )
VALUES (@campo1, @campo2, @campoN)

Por otro lado, para insertar registros en otro servidor, debes tener habilitado el servicio de transacciones distribuidas o bien definir modificar el tipo de transaccion a utilizar como read uncommited antes de insertar registros remotamente.

SET TRANSACTION ISOLATION READ UNCOMMITTED


:arriba: Saludos!

ealdui 26/03/2008 17:30

Re: problemas con OPENQUERY
 
gracias por responder
como puedo saber si el servicio de transacciones distribuidas esta activado o no y como activarlo

Mithrandir 04/04/2008 13:36

Re: problemas con OPENQUERY
 
En el listado de servicios de tu servidor (Panel de Control) revisa en busca de Distributed Transaction Coordinator. Si está detenido, habilitalo.


La zona horaria es GMT -6. Ahora son las 22:52.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.