如何在SQL Server中使用MySQL REPLACE INTO命令?

问题描述 投票:0回答:3

当您需要更改MySQL表中的数据时,我们使用了以下命令:Replace into table_name

但对于Sql Server,我不知道如何使用类似的命令。

有人可以帮我吗。

我喜欢替换这个:

("replace into products"
   + " (date, hour, IdProduct, Ref1, Ref2, Ref3) values (?,?,?,?,?,?)");

我感谢你们的帮助。对不起

问候

mysql sql
3个回答
-1
投票

在SQL Server中,您可以使用UPDATE命令更改表中的数据:

UPDATE products
  SET date = new_value_1,
      hour = new_value_2,
      ...
      ...
WHERE (where_clause)

1
投票

如果没有REPLACE INTO或INSERT ON DUPLICATE KEY UPDATE,您需要找出应更新或插入的记录。在没有复合主键的情况下,我必须做这样的事情,但它可以替代REPLACE INTO。

  • 创建一个临时表,其中包含要INSERTED或UPDATED的列。同样在此临时表中,您需要一个BIT类型的“找到”列
  • 将要插入或更新的行放入此临时表中。将“found”保留为0。
  • UP UPATE临时表SET found = 1并加入到目标表。
  • 更新目标表JOIN到主键(或唯一键)字段上的临时表。
  • INSERT到目标表中的所有内容都来自临时表,其中found = 0。

一旦页面允许我发布SQL,就会遇到技术问题。现在,添加了一张图片。

enter image description here


1
投票
UPDATE table_name SET column1 = value1, column2 = value2, ...
WHERE condition;
© www.soinside.com 2019 - 2024. All rights reserved.