更新查询是否覆盖表中具有相同值的记录?

时间:2013-09-11 14:21:44

标签: sql sql-server-2008-r2

如果现有值与您更新的值相同,那么Update查询updates/overwrites(或??)现有值吗?

此问题与SQL Server 2008 R2有关。

1 个答案:

答案 0 :(得分:2)

如果你不写查询,是的。请考虑以下查询:

UPDATE a SET fa = 'hello'

即将更新字段fa并将其设置为hello,无论如何。但是,如果你写了类似的东西:

UPDATE a SET fa = 'hello' WHERE fa <> 'hello'

然后它只会更新如果值不是hello。现在,在更大的范围内,这通常被称为乐观并发。我只想更新行如果该行是我第一次检索它时的行。

然而,总的来说这个问题有点奇怪。当然它会覆盖这个领域,但这并不重要,它的价值是相同的。