22,300
社区成员




CREATE TABLE [dbo].[a](
[pgvl_id] [INT] IDENTITY(1,1) NOT NULL,
[pgvl_serial_number] [VARCHAR](50) NOT NULL,
[pgvl_wo_nbr] [VARCHAR](20) NULL,
[pgvl_part] [VARCHAR](20) NULL,
[pgvl_machine_name] [VARCHAR](50) NOT NULL,
[pgvl_terminal_id] [INT] NOT NULL,
[pgvl_step_seq] [VARCHAR](50) NULL,
[pgvl_step_name] [VARCHAR](100) NULL,
[pgvl_item_name] [VARCHAR](50) NULL,
[pgvl_item_para] [VARCHAR](400) NULL,
[pgvl_lsl] [VARCHAR](50) NULL,
[pgvl_usl] [VARCHAR](50) NULL,
[pgvl_values] [VARCHAR](50) NULL,
[pgvl_result] [VARCHAR](10) NULL,
[isenable] [INT] NOT NULL,
[modtime] [DATETIME] NOT NULL,
[acctid] [INT] NOT NULL,
[sid] [INT] NOT NULL
) ON [PRIMARY]
SET IDENTITY_INSERT test.dbo.c ON;
MERGE INTO test.dbo.c AS t
USING test.dbo.a AS s
ON (t.pgvl_id = s.pgvl_id)
--目标数据表存在该数据
WHEN MATCHED
THEN UPDATE SET t.pgvl_serial_number=s.pgvl_serial_number,
t.pgvl_wo_nbr=s.pgvl_wo_nbr,
t.pgvl_part=s.pgvl_part,
t.pgvl_machine_name=s.pgvl_machine_name,
t.pgvl_terminal_id=s.pgvl_terminal_id,
t.pgvl_step_seq=s.pgvl_step_seq,
t.pgvl_step_name=s.pgvl_step_name,
t.pgvl_item_name=s.pgvl_item_name,
t.pgvl_item_para=s.pgvl_item_para,
t.pgvl_lsl=s.pgvl_lsl,
t.pgvl_usl=s.pgvl_usl,
t.pgvl_values=s.pgvl_values,
t.pgvl_result=s.pgvl_result,
t.isenable=s.isenable,
t.modtime=s.modtime,
t.acctid=s.acctid,
t.sid=s.sid
--目标数据表不存在该数据
WHEN NOT MATCHED
THEN INSERT VALUES(s.pgvl_id,
s.pgvl_serial_number,
s.pgvl_wo_nbr,
s.pgvl_part,
s.pgvl_machine_name,
s.pgvl_terminal_id,
s.pgvl_step_seq,
s.pgvl_step_name,
s.pgvl_item_name,
s.pgvl_item_para,
s.pgvl_lsl,
s.pgvl_usl,
s.pgvl_values,
s.pgvl_result,
s.isenable,
s.modtime,
s.acctid,
s.sid)
--源数据表不存在该数据
WHEN NOT MATCHED BY SOURCE
THEN DELETE;
SET IDENTITY_INSERT test.dbo.c OFF;
SET IDENTITY_INSERT test.dbo.c ON;
MERGE INTO test.dbo.c AS t
USING test.dbo.a AS s
ON (t.pgvl_id = s.pgvl_id)
--目标数据表存在该数据
WHEN MATCHED
THEN UPDATE SET t.pgvl_serial_number=s.pgvl_serial_number,
t.pgvl_wo_nbr=s.pgvl_wo_nbr,
t.pgvl_part=s.pgvl_part,
t.pgvl_machine_name=s.pgvl_machine_name,
t.pgvl_terminal_id=s.pgvl_terminal_id,
t.pgvl_step_seq=s.pgvl_step_seq,
t.pgvl_step_name=s.pgvl_step_name,
t.pgvl_item_name=s.pgvl_item_name,
t.pgvl_item_para=s.pgvl_item_para,
t.pgvl_lsl=s.pgvl_lsl,
t.pgvl_usl=s.pgvl_usl,
t.pgvl_values=s.pgvl_values,
t.pgvl_result=s.pgvl_result,
t.isenable=s.isenable,
t.modtime=s.modtime,
t.acctid=s.acctid,
t.sid=s.sid
--目标数据表不存在该数据
WHEN NOT MATCHED
THEN INSERT(pgvl_id,
pgvl_serial_number,
pgvl_wo_nbr,
pgvl_part,
pgvl_machine_name,
pgvl_terminal_id,
pgvl_step_seq,
pgvl_step_name,
pgvl_item_name,
pgvl_item_para,
pgvl_lsl,
pgvl_usl,
pgvl_values,
pgvl_result,
isenable,
modtime,
acctid,
sid) VALUES(s.pgvl_id,
s.pgvl_serial_number,
s.pgvl_wo_nbr,
s.pgvl_part,
s.pgvl_machine_name,
s.pgvl_terminal_id,
s.pgvl_step_seq,
s.pgvl_step_name,
s.pgvl_item_name,
s.pgvl_item_para,
s.pgvl_lsl,
s.pgvl_usl,
s.pgvl_values,
s.pgvl_result,
s.isenable,
s.modtime,
s.acctid,
s.sid)
--源数据表不存在该数据
WHEN NOT MATCHED BY SOURCE
THEN DELETE;
SET IDENTITY_INSERT test.dbo.c OFF;