巧妙解决mysql删除或添加记录时,对自增主键ID进行重新排序的问题

4 篇文章 0 订阅

一、问题描述

表一

id姓名
1张三
2李四

表二(当删除第一条记录时,显示为表二)

id姓名
2李四

表三(如何使表显示为表三,即实现对表中的id字段重新排序)

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>";





三、好处


对于解决如题的问题,相对于使用数据库的id字段实现重新排序,如上解决问题,避免了当数据条目很多时,数据库的额外开销。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值