MERGE 语句必须以分号 (;)

use*_*809 -2 t-sql sql-server

我正在使用此代码,但收到上面的错误消息。为什么会这样?我还为第二台 PC 创建了链接服务器,链接名称 = 192.168.1.101,用户名=xxxx 和密码=xxxx

WITH Source AS 
  ( SELECT id, name FROM Tamio.dbo.memberform WHERE active = 1 or active =0) 
MERGE INTO [192.168.1.101].Imatismos.dbo.customermaster AS target 
  USING Source ON target.id = source.id 
  WHEN MATCHED THEN UPDATE SET target.name = source.name 
  WHEN NOT MATCHED THEN INSERT (id, name) VALUES (source.id, source.name)
Run Code Online (Sandbox Code Playgroud)

Kah*_*azi 5

在 Merge 语句的末尾添加一个分号!

WITH Source AS 
  ( SELECT id, name FROM Tamio.dbo.memberform WHERE active = 1 or active =0) 
MERGE INTO [192.168.1.101].Imatismos.dbo.customermaster AS target 
  USING Source ON target.id = source.id 
  WHEN MATCHED THEN UPDATE SET target.name = source.name 
  WHEN NOT MATCHED THEN INSERT (id, name) VALUES (source.id, source.name);
Run Code Online (Sandbox Code Playgroud)