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
2つの表定義を表示します。 – jarlh