1
正如我的標題所說,我想在SQL中增加表中所有行的列值。增加所有行的FK列值SQL
假設我在tab_a
有這些數據和PK
是:fk_a
和fk_b
和fk_c
:
|fk_a|fk_b|fk_c|
|1 |2 |2 |
|1 |2 |3 |
如果我做了以下更新語句:
update tab_a
set fk_c = fk_c + 1
我的查詢會抱怨說,數據(1,2,3)已經存在,但它不應該抱怨,因爲我將更新每一行,因此行(1,2,3)應該變爲(1,2,4)。
我該如何做到這一點?
刪除唯一約束。進行更改。將約束添加回來。 –
請將表格的數據定義添加到您的問題中。順便說一句:也許你需要延期約束。 BTW2:改變主鍵(或唯一鍵/候選鍵)的值通常是一個壞主意,不管怎樣,爲什麼*是唯一的? – joop
向我們展示兩個表格定義。 – jarlh