我想用应用程序中的新数据表替换我的 sql server 数据库中的表“Met”。我的基本想法是循环新表中的每一行并比较现有表。
我使用了一个存储过程,但它只有“插入”和“更新”功能。我需要先删除旧表吗?
谢谢
对于每一行,我想循环以下存储过程。
;WITH CTE AS (SELECT skey=@skey,ProbMetID=@ProbMetID,Interval=@Interval,Counts=@Counts)
MERGE Met AS TARGET
USING CTE SOURCE
ON SOURCE.skey = TARGET.skey
WHEN MATCHED THEN
UPDATE
SET ProbMetID = SOURCE.ProbMetID,
Interval = SOURCE.Interval,
Counts = SOURCE.Counts,
WHERE skey = @skey
WHEN NOT MATCHED THEN
INSERT INTO Met(skey,ProbMetID,Interval,Counts)
VALUES(@skey,@ProbMetID,@Interval,@Counts);