0
比方說,我有3列討論:更新主鍵值
表表:表1 rec_no - >主鍵(整數) 產品 prodlocation
我會盡力做一個創紀錄的轉變
update table1 set rec_no = rec_no - 1
- >工作正常
update table1 set rec_no = rec_no + 1
- >失敗,主鍵衝突
我明白我們不應該操縱數據,如果它是主鍵的一部分。
出於討論的緣故,任何想法爲什麼第二個查詢失敗?如果兩個查詢均失敗,我認爲這是可以接受的
主鍵違規通常意味着您嘗試設置的值已經存在於另一條記錄中。但是,您是否將這兩個查詢連接起來? –
這兩個查詢都是單獨的函數。我一次只運行一個查詢。我的rec_no數據只是0到10之間的數字,無論是+1還是-1,數據仍然存在。 如果兩個查詢均失敗,則會更容易。只有-1獲得成功,這讓我感到困惑。 – user3015739