simplequery($q);"/> simplequery($q);">

mysql用php如何分批处理插入?比如前1000条数据处理结束后,再处理1001至2000条,然后再处理2001至3000条…直到全部处理完毕

WBOY
Freigeben: 2016-06-13 11:56:44
Original
2033 Leute haben es durchsucht

mysql用php怎么分批处理插入?比如前1000条数据处理结束后,再处理1001至2000条,然后再处理2001至3000条……,直到全部处理完毕?
当表 member中数据量不大时,可以一次性执行:

$q="select * from member'";<br />$r=$obj_db->simplequery($q);<br />while($a=$obj_db->fetchrow($r,DB_FETCHMODE_ASSOC)){<br />   $id=$a[id];<br />   $mccd=$a[cca]+$a[ccb];<br />   <br />   $query="insert into mingxi (mid,mccd,mtime) values ('$id','$mccd','$time')";<br />   $obj_db->simplequery($query);<br />}
Nach dem Login kopieren


但当member中数据量达到百万条时,说会出现执行超时的错误:
Fatal error: Maximum execution time of 30 seconds exceeded in D:

那么怎么现实分批处理呢,比如前1000条数据处理结束后,再处理1001至2000条,然后再处理2001至3000条……,直到全部处理完毕?

$q="select * from member'";<br />$r=$obj_db->simplequery($q);<br />while($a=$obj_db->fetchrow($r,DB_FETCHMODE_ASSOC)){<br />$i++;<br /><br />$ep=1000;//这里假设处理完第1个1000条后再处理第二个1000条,直至处理结束?<br /><br />   $id=$a[id];<br />   $mccd=$a[cca]+$a[ccb];<br />   <br />   $query="insert into mingxi (mid,mccd,mtime) values ('$id','$mccd','$time')";<br />   $obj_db->simplequery($query);<br />}
Nach dem Login kopieren



请高手帮写出详细代码,谢谢!因代码隐藏在后台执行,所以不要考虑用分页一页一页手工去点的方式
------解决方案--------------------
可以用 insert into mingxi (mid,mccd,mtime) select id, cca+ccb, time from member
------解决方案--------------------
$offs = isset($_GET['offs']) ? $_GET['offs'] : 1;<br />$sql = "select * from member limit $offs, 1000";<br />//做你该做的事<br />header("Location: $_SERVER[PHP_SELF]?offs=" . ($offs+1000));<br />
Nach dem Login kopieren

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage