我对“UPDATE ... SET .. WHERE ...”语句的原子性有一个相当基本和普遍的问题。基本SQL原子性“UPDATE ... SET .. WHERE ...”
有一个表(没有额外的约束),
+----------+
| id | name|
+----------+
| 1 | a |
+----+-----+
现在
,我将执行以下语句4 “同时”(同时)。
UPDATE table SET name='b1' WHERE name='a'
UPDATE table SET name='b2' WHERE name='a'
UPDATE table SET name='b3' WHERE name='a'
UPDATE table SET name='b4' WHERE name='a'
是否只有一个UPDATE语句会与表更新执行? 或者,是否有多个UPDATE语句可以真正更新表?
我是否需要额外的事务或锁定来让一个UPDATE值写入表中?
感谢
[编辑] 4条UPDATE语句是从不同的进程来执行并行。 [编辑]与Postgresql
在第一条语句之后,其他人都不会做任何事情,因为您已将名称从* a *更改为* b1 *。 – RedFilter 2010-04-19 14:33:03