Php 在SQL表的中间插入行并调整上行ID和*x27;s 希望允许在SQL表的中间插入行,然后自动更新升序ID为+1。< /P>

Php 在SQL表的中间插入行并调整上行ID和*x27;s 希望允许在SQL表的中间插入行,然后自动更新升序ID为+1。< /P>,php,sql,Php,Sql,例如: 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项。此I

例如:

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
项。

此ID将不是我的主键,因为这只是为了正确输出数据。您能给我一个示例,说明使用此id作为索引时sql代码的外观。鉴于所有id都必须修改,某种类型的
UPDATE TABLE SET id=id+1,其中id>insin
应该是一个不错的选择