巧妙解决mysql删除或添加记录时,对自增主键ID进行重新排序的问题
2017-11-13 18:40
579 查看
一、问题描述
表一
表二(当删除第一条记录时,显示为表二)
表三(如何使表显示为表三,即实现对表中的id字段重新排序)
二、问题解决
原理:重新定义一个变量用来显示表中的序列号
echo "<table style=' text-align: center' border='2'>
<tr><th>ID</th><th>名字</th><th>年龄</th><th>编辑</th></tr>";
for($i=0;$i<$dataCount;$i++){
$result_arr=mysqli_fetch_assoc($result);//返回表中每条数据的具体内容
$id= $result_arr['id'];
$count=$i+1;//重新定义一个变量count作为表格排序显示的序列号
$name= $result_arr['name'];
$age= $result_arr['age'];
//表格输出时,输出新定义的变量count,如下
echo "<tr><td>$count</td><td>$name</td><td><a href='deleteUser.php?id=$id'>删除</a></td></tr>";
}
echo "</table>";
[b]三、好处
对于解决如题的问题,相对于使用数据库的id字段实现重新排序,如上解决问题,避免了当数据条目很多时,数据库的额外开销。
表一
id | 姓名 |
1 | 张三 |
2 | 李四 |
id | 姓名 |
2 | 李四 |
id | 姓名 |
1 | 李四 |
原理:重新定义一个变量用来显示表中的序列号
echo "<table style=' text-align: center' border='2'>
<tr><th>ID</th><th>名字</th><th>年龄</th><th>编辑</th></tr>";
for($i=0;$i<$dataCount;$i++){
$result_arr=mysqli_fetch_assoc($result);//返回表中每条数据的具体内容
$id= $result_arr['id'];
$count=$i+1;//重新定义一个变量count作为表格排序显示的序列号
$name= $result_arr['name'];
$age= $result_arr['age'];
//表格输出时,输出新定义的变量count,如下
echo "<tr><td>$count</td><td>$name</td><td><a href='deleteUser.php?id=$id'>删除</a></td></tr>";
}
echo "</table>";
[b]三、好处
对于解决如题的问题,相对于使用数据库的id字段实现重新排序,如上解决问题,避免了当数据条目很多时,数据库的额外开销。
相关文章推荐
- mysql删除记录后,添加记录调过删除id.如何重新排序.
- 解决在mysql表中删除自增id数据后,再添加数据时,id不会自增1的问题
- Mysql对自增主键ID进行重新排序
- Mysql对自增主键ID进行重新排序
- Mysql对自增主键ID进行重新排序
- Mysql对自增主键ID进行重新排序
- Mysql对自增主键ID进行重新排序
- Mysql对自增主键ID进行重新排序
- Mysql对自增主键ID进行重新排序
- Mysql对自增主键ID进行重新排序
- mysql delete删除记录数据库空间不减少问题解决方法
- 给添加或者删除后的表中ID重新排序
- datagrid因排序造成的添加删除问题解决方案
- datagrid因排序造成的添加删除问题解决方案
- 关于mysql删除记录后id顺序不连续的解决方法
- 解决VC6.0中对类的变量或函数进行了添加或删除操作后,可能导致在类视图中看不到该类的问题
- SQL 问题:已知主键id 和排序条件 这条记录的上一条或下一条记录
- MySQL生产库Insert了2次同样的记录但是主键ID是不一样的问题的分析过程
- Ado.NET 记录的添加、修改、删除!问题得到解决了!!!
- Mysql自增主键ID调整|重新排序