none
Insertar registros en otra BBDD de SQl server 2005 RRS feed

  • Pregunta

  • Buenas tardes, tengo un pequeño problema que espero que me podais ayudar. Necesito volcar una serie de registros de una bbdd a otra, he hecho un paquete SSIS con origen OLE DB y destino OLE DB y puedo volcar bien los registros el problema es que si ese registro ya está me lo duplica (la bbdd destino no tiene restricciones de clave primaria) y como es otra bbdd no puedo usar consulta del tipo

    select *

    from id not in (select id from...)

    un saludo

    lunes, 5 de noviembre de 2012 15:36

Respuestas

  • Hola.

    Que no tenga clave primaria creada es un problema ya de por sí que es necesario resolver. Debería ser el primer paso en la resolución de este caso.

    El segundo paso sería realizar la comparación con esa clave primaria, con una tarea de lookup, por ejemplo. Así, en el flujo implementas un lookup en el que recuperes la clave primaria del destino. Luego comparas con esos campos de tu flujo y en la salida del lookup te quedas únicamente con los registros que no casen ("No match output", que son los que no están).

    Si quieres, también puedes emplear una salida en la que redirijas los registros que sí existan para tratar un update posterior.

    Déjanos saber qué tal te va.


    Alberto López Grande
    SQL Server MVP
    Visita mi blog en http://qwalgrande.com
    Sígueme en twitter en http://twitter.com/qwalgrande

    martes, 6 de noviembre de 2012 19:30
    Moderador