问题反馈:数据库里有一张表,主键ID,自增长,在删除某些记录之后,ID值就会出现不连续的情况,
类似于1,2,4,9,11,12,13,25.....导致ID越来越大,中间的空白也越来越多,
本程序只是解决思路中的一个。
$query="select id from test1"; //取得ID列
$result=mysql_query($query);

$i=1;
while($row=mysql_fetch_assoc($result)){
	if($row['id']!=$i){ //从ID等于1开始判断
		//echo $i."不等于".$row['id'].""; //如果不相等,则将缺少的ID存入数组
		for($j=$i; $j<$row['id']; $j++){
			//echo "缺少的ID有:".$j."";
			$arr[]=$j;
		}
		$i=$j;
	}

	//如果相等则+1继续对比
	while($row['id']==$i){
		//echo $row['id']."---".$i."";
		$i++;
		break;
	}
}
//print_r($arr);
foreach($arr as $val){
    //插入数据填补空白区域
	$sql="insert into test1() values('{$val}','".rand(1000, 9999)."')";
	echo $sql."";
	mysql_query($sql);
}

还有其它方法也可以实现同样的效果,比如数据库方面的操作:
在数据表里添加触发器,删除记录的时候记下ID值,或者其它。