DTS con WHERE NOT EXISTq
Publicado por carina (1 intervención) el 07/03/2007 09:26:18
estimados:
tengo un DTS con comandos Activex. el objetivo es copiar de BD_Origen a Bd_destino unas tablas, pero verificando que los registros no existan en destino para que no genere error de claves duplicadas. probe una sentencia en sqlserver y funciono ok, pero a la hora de insertarlo en el dts no me funciona lo de indicar la bd_origen y bd_destino. ya que en la misma sentencia he de incluir las 2 BD. transcribo la sentencia SQL(este es el select si estan en la misma BD:
SELECT NIF FROM [empresa$Customer] WHERE (NOT EXISTS (SELECT clsnif FROM cls_trans WHERE clsnif = [empresa$customer].[NIF]))
en el dts:
' SELECCIONO CLIENTES
mySQLCmdText = "select DISTINCT [NIF], Name from [empresa$Customer] as t WHERE (NOT EXISTS (SELECT clsnif FROM [Cls_trans] WHERE clsnif = t.[NIF]))"
recCustomer.Open mySQLCmdText, corigen --aqui indico BDORIGEN pero como indico BD destino??????
ademas esto seria un SELECT, pero como condiciono el INSERT where no exists???
Espero puedan ayudarme
Saludos cordiales
Carina
tengo un DTS con comandos Activex. el objetivo es copiar de BD_Origen a Bd_destino unas tablas, pero verificando que los registros no existan en destino para que no genere error de claves duplicadas. probe una sentencia en sqlserver y funciono ok, pero a la hora de insertarlo en el dts no me funciona lo de indicar la bd_origen y bd_destino. ya que en la misma sentencia he de incluir las 2 BD. transcribo la sentencia SQL(este es el select si estan en la misma BD:
SELECT NIF FROM [empresa$Customer] WHERE (NOT EXISTS (SELECT clsnif FROM cls_trans WHERE clsnif = [empresa$customer].[NIF]))
en el dts:
' SELECCIONO CLIENTES
mySQLCmdText = "select DISTINCT [NIF], Name from [empresa$Customer] as t WHERE (NOT EXISTS (SELECT clsnif FROM [Cls_trans] WHERE clsnif = t.[NIF]))"
recCustomer.Open mySQLCmdText, corigen --aqui indico BDORIGEN pero como indico BD destino??????
ademas esto seria un SELECT, pero como condiciono el INSERT where no exists???
Espero puedan ayudarme
Saludos cordiales
Carina
Valora esta pregunta


0