对数据库存储过程还不是很熟练,一时半会还写不出函数,所以就干脆用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 "没有记录";
}
}
对数据库里所有表的自增字段初始化