我在c#类中编写了以下查询。
hitArea
但是我在运行上面的查询时遇到了错误,
关键字“ON”附近的语法不正确。
答案 0 :(得分:0)
使用MERGE
,演示
DECLARE @ui TABLE(
col1 INT PRIMARY KEY,
col2 INT
)
INSERT INTO @ui(col1,col2)
VALUES (1,100), (2,200);
-- parameters
DECLARE @c1 INT = 1, @c2 INT = 300;
MERGE @ui AS T
USING (
VALUES (@c1, @c2)
) AS S(col1,col2)
ON (T.col1 = S.col1)
WHEN NOT MATCHED BY TARGET
THEN INSERT(col1,col2) VALUES(S.col1,S.col2)
WHEN MATCHED
THEN UPDATE SET T.col2 = S.col2;
SELECT *
FROM @ui
假设col1
是PK,在您的c#代码中只需将<{1}}替换为
string query = ...