对数据库存储过程还不是很熟练,一时半会还写不出函数,所以就干脆用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 "没有记录"; } }
原文地址:http://itech.blog.51cto.com/192113/1544875