SQL MERGE для удаленной (связанной) таблицы сервера

Можно ли использовать функцию SQL MERGE в таблице базы данных связанного сервера? Конечной целью является синхронизация удаленной таблицы с нашей локальной таблицей SQL-сервера. Я провел некоторое исследование в Интернете и не нашел никакой связанной информации. Если возможно, как бы вы настроили исходные и целевые утверждения?

Повторить комментарий @Mikael Eriksson, да, вы можете. Цель MERGE не может быть удаленной, но источник MERGE может быть удален. Итак, если вы можете запустить оператор MERGE со своего сервера в FL, то это вполне возможно. Например, вы можете запустить что-то вроде этого на своем удаленном сервере в FL:

 MERGE INTO "local FL table" USING "CT server"."database"."schema"."same table" ON ... 

По-видимому, мои исследования не были достаточно хорошими, это прямо указано в MSDN: «target_table не может быть удаленной таблицей» … так что отвечает на этот вопрос …

Yoy всегда может использовать EXEC ('SQL CODE HERE') на YOUR_LINKED_SERVER на вашем сервере, возможно, в виде хранимой процедуры.

Это выполнит запрос, который вы хотите на вашем связанном сервере, чтобы вы могли объединить локальную таблицу (target_table) с таблицей сервера (источник).

Это код, который я использую в Хранимой процедуре на моем Сервере, которую вызывается от клиента. Хранить хранимую процедуру клиента в server-> Server Exec Query для обновления разных связанных серверов (клиентов) с той же информацией (сотрудниками)

  EXEC(' SET IDENTITY_INSERT PVBC.DBO.empleadas ON MERGE INTO PVBC.DBO.empleadas A USING( SELECT id_empleada, nombre, apellidos FROM SERVIDOR.PVBC_SERVIDOR.DBO.empleadas) TA ON (A.id_empleada =TA.id_empleada) WHEN MATCHED THEN UPDATE SET A.nombre=TA.nombre, A.apellidos=TA.apellidos WHEN NOT MATCHED THEN INSERT (id_empleada, nombre, apellidos) VALUES (id_empleada, nombre, apellidos); SET IDENTITY_INSERT PVBC.DBO.empleadas OFF ')AT MEGA --This is one of my linked servers