Buenos días a todos!
En un servidor de SQL Server2012 tengo vinculado/linkado uno de MySql. Intento actualizar datos desde SQLServer hacia Mysql con merge, de la siguiente forma:
Código SQL:
Ver originalMERGE INTO OPENQUERY(SERVIDOR_MYSQL, 'SELECT campo1, campo2, campo3, campo4 FROM [SRV_VINCULADO].[bd].[tabla1]') AS DESTINO
USING [BD_ORIGEN].[dbo].[tabla1] AS ORIGEN
ON (ORIGEN.campo1 = DESTINO.campo1 AND ORIGEN.campo2 = DESTINO.campo2)
WHEN MATCHED THEN UPDATE
SET DESTINO.campo3 = ORIGEN.campo3,
DESTINO.campo4 = ORIGEN.campo4
WHEN NOT MATCHED THEN INSERT
VALUES(ORIGEN.campo1,
ORIGEN.campo2,
ORIGEN.campo3,
ORIGEN.campo4)
WHEN NOT MATCHED BY SOURCE THEN DELETE;
El problema está en el alias 'DESTINO', pues no me lo reconoce y no puedo hacer el update.
He probado varias opciones para intentar solucionarlo como ésto
Código SQL:
Ver originalMERGE INTO OPENQUERY(SERVIDOR_MYSQL, 'SELECT campo1, campo2, campo3, campo4 FROM tabla1') AS DESTINO
MERGE INTO OPENQUERY(SERVIDOR_MYSQL, 'SELECT campo1, campo2, campo3, campo4 FROM [SRV_VINCULADO].[tabla1]') AS DESTINO
pero nada
, por favor alguien me podría ayudar?
Saludos y gracias