if?($strleng100){
創(chuàng)新互聯(lián)建站主要從事成都網(wǎng)站建設(shè)、做網(wǎng)站、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)永安,十載網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):13518219792
//如果大于100條就每次寫入100,休息1秒,然后繼續(xù)寫,直到寫完為止
$write_count?=?floor($strleng/100);
while?($write_count??0){
for?($i=0;$i100;$i++){
echo?"INSERT?INTO?tbl_name?(a,b,c)?VALUES(1,2,3)";//寫100次就休息
}
//echo?"INSERT?INTO?tbl_name?(a,b,c)?VALUES(1,2,3),(4,5,6),(7,8,9);";這樣可以一次插入多條數(shù)據(jù),效率更高
//參考
$write_count?-=1?;
sleep(1);
echo?'休息1秒';
}
}
$value = '';$query_num = 5; //插入數(shù)量for($i=1;$i=$query_num;$i++){ $value .= "('25','1')";}//mysql insert有插入多條語法,拼接sql語句,table_name表名 $sql = "insert into table_name (memid,online) values ".$value;//執(zhí)行,插入$query_num條數(shù)據(jù)mysql_query($sql);
一次性插入1000條數(shù)據(jù)比一條一條的插入速度會(huì)提升N倍,主要技巧就是在寫SQL的上面,沒啥難度
insert into table1 value (v1, v2, v3), (x1,x2,x3),....
而不是
insert into table1 value (v1, v2, v3);
insert into table1 value (x1,x2,x3);
這樣一條一條的插入
希望你能明白
PHP框架 Laravel Eloquent ORM 批量插入數(shù)據(jù)是通過傳入數(shù)組實(shí)現(xiàn)的。
比如:
DB::table('users')-insert(array(
array('email' = 'taylor@example點(diǎn)抗 ', 'votes' = 0),
array('email' = 'dayle@example點(diǎn)抗 ', 'votes' = 0),
));
以上是操作表users,執(zhí)行insert語句,參數(shù)是一個(gè)數(shù)組,封裝了兩條數(shù)據(jù),這里可以自定義數(shù)據(jù),insert內(nèi)部就編程批量插入了。
然后調(diào)用save方法:
public static function create(array $attributes)
{
$model = new static($attributes);
$model-save();
return $model;
}