Debería funcionar bien. Asegúrate que la aplicación se está conectando al servidor correcto. Hice una prueba con ADO y funcionó correctamente. Esto fue lo que hice:
Así establecí la cadena de conexión:
Código Delphi
[-]
Provider=SQLNCLI10.1;Integrated Security=SSPI;Persist Security Info=False;User ID="";Initial Catalog=CRI_DESA;Data Source=Direccion_IP_del_Servidor;Initial File Name="";Server SPN=""
En ADOQuery1.SQL (En tiempo de diseño):
Código SQL
[-]
MERGE PRUEBA1 as target
using PRUEBA2 AS SOURCE
ON target.CAMPO1 = source.CAMPO1
WHEN NOT MATCHED THEN
INSERT(CAMPO1) VALUES(source.CAMPO1);
Y como Acción:
Código Delphi
[-]
procedure TForm14.Button1Click(Sender: TObject);
begin
AdoQuery1.ExecSQL;
ShowMessage('Prueba terminada');
end;