我希望允许在sql表的中间插入行,然后自动将升序id更新为+1。
例:
ROW ID
1 5
2 6
3 7
4 8
然后,我希望能够插入 id 为 6 的第 5 行,并使其他行更新为当前数字的 +1:
ROW ID
1 5
2 7
3 8
4 9
5 6
有没有有效的方法? 除了运行整个表并将另一个 ID 调整为 +1 之外?
向ID
列添加索引。这样,您只需运行实际受更新操作影响的行,而不是整个表。不利的一面是,每个索引都会使插入更加昂贵。
顺便说一句,如果ID
列属于您的主键,请不要更改ID
条目。