首页 > 代码库 > 对数据库里所有表的自增字段初始化

对数据库里所有表的自增字段初始化

对数据库存储过程还不是很熟练,一时半会还写不出函数,所以就干脆用php写了个程序。
十几个数据库,每个库里都有几百张表,数据全部被清空了,但是表里的自增字段的值却还是保留着原表里的,要全部一次性的还原到初始值,若是一个表一个表的修改,不知道要改到猴年马月。

//在系统库查询需要修改的数据库的表名称
$sysDbName="information_schema";
$dbarray=array("db1","db2","db3","db4","db5","db6","db7","db8","db9","db10");
foreach($dbarray as $v){
	//需要操作的数据库
	$dbname=$v;
	mysql_select_db("$dbname") or die("Open DB FAILED.");
	$query="select table_name from `TABLES` where TABLE_SCHEMA=‘{$sysDbName}‘ and auto_increment>1";
	$result=mysql_query($query);
	$totalRows=mysql_num_rows($result);
	echo "共有 ".$totalRows." 个表需要初始化自增字段:<hr/>";
	if($totalRows){
		while($row=mysql_fetch_row($result,MYSQL_NUM)){
			foreach ($row as $val){
				mysql_select_db($dbname2);
				$query="alter table {$val} auto_increment=1";
				mysql_query($query);
			}
		}
	}else{
		echo "没有记录";
	}
}


对数据库里所有表的自增字段初始化