我對「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