SQL Server Performance

Consulta entre 2 servidores distintos

Discussion in 'Preguntas sobre SQL Server en Español.' started by jgisbert, Nov 15, 2003.

  1. jgisbert New Member

    Hola a todos, quería saber si se puede hacer una consulta que implique a dos servidores distintos. Es decir mi idea es pasar datos entre dos servidores con un DTS especificando una consulta, pero no quiero pasar todos los datos de la tabla sino solo aquellos que no esten en la tabla destino.

    Quisiera hacer algo asi
    select * from [SERVIDORorigen].[BBDD].[dbo].[Tabla] where campo not in (select campo from
    [SERVIDORdestino].[BBDD].[dbo].[Tabla])

    Esto lo quiero hacer asi porque la tabla es muy grande y tarda muchisimo en traspasar todos los datos y me gustaria pasar solo los datos que no tiene

    Si esto no se puede hacer me podríais dar alguna idea

    Muchas gracias por vuestra ayuda
  2. Luis Martin Moderator

    Teniendo los permisos correspondientes, no habría ningún problema para pasar datos de un servidor al otro.
    En el ejemplo es posible que tengas que calificar tambiém campo (servidordestino.bbdd.dbo.tabla.campo).

    Si son dos servidores en producción te sugiero que lo pruebes con dos tablas nuevas y algunos datos a modo de test.

    Saludos,

    Luis Martin

    ...Thus mathematics may be defined as the subject in which we never know what we are talking about, nor whether what we are saying is true.
    Bertrand Russell
  3. Luis Martin Moderator

    La forma de hacerlo es la siguiente:

    -- En el servidor destino
    EXEC sp_addlinkedserver 'Origen', N'SQL Server'

    SELECT *
    FROM [BBDD].[dbo].[Tabla]
    WHERE campo NOT IN (SELECT field
    FROM OPENQUERY(Origen, 'SELECT campo FROM [BBDD].[dbo].[Tabla]'))

    Luis Martin

    ...Thus mathematics may be defined as the subject in which we never know what we are talking about, nor whether what we are saying is true.
    Bertrand Russell

Share This Page