0
我希望允許在sql表中間插入行,然後自動將升序id更新爲+1。在SQL表中插入行並調整升序ID
例子:
ROW ID
1 5
2 6
3 7
4 8
話,我希望能夠插入5行與6的ID,使其他行的更新是他們目前的一些+1:
ROW ID
1 5
2 7
3 8
4 9
5 6
有沒有一種有效的方法呢?除了貫穿整個桌子並將其他ID調整爲+1之外呢?
我希望允許在sql表中間插入行,然後自動將升序id更新爲+1。在SQL表中插入行並調整升序ID
例子:
ROW ID
1 5
2 6
3 7
4 8
話,我希望能夠插入5行與6的ID,使其他行的更新是他們目前的一些+1:
ROW ID
1 5
2 7
3 8
4 9
5 6
有沒有一種有效的方法呢?除了貫穿整個桌子並將其他ID調整爲+1之外呢?
爲ID
列添加索引。這樣,您只需要遍歷實際受更新操作影響的行而不是整個表。不利的一面是,每個索引都會導致插入代價更高。
順便說一句如果ID
列屬於您的主鍵,請勿更改ID
條目。
這個ID不會是我的主鍵,因爲這是隻是爲了輸出正確的數據。 你能給我一個例子,說明sql代碼應該如何用這個id作爲索引。 – Mathias
因爲所有的ID都必須修改,所以'UPDATE TABLE SET ID = ID + 1 WHERE ID> InsID'應該是一個不錯的選擇 – Akash