为了账号安全,请及时绑定邮箱和手机立即绑定

php中如何执行批量插入数据到mysql

php中如何执行批量插入数据到mysql

HUWWW 2019-04-08 09:21:36
$arr=Array([0]=>Array([u_id]=>1[userid]=>feng003[status]=>3[confirm_time]=>1427940803[pv_total]=>0.00)[1]=>Array([u_id]=>1[userid]=>feng003[status]=>3[confirm_time]=>1428477888[pv_total]=>0.00)[2]=>Array([u_id]=>1[userid]=>feng003[status]=>3[confirm_time]=>1428475892[pv_total]=>0.00)[3]=>Array([u_id]=>2[userid]=>feng001[status]=>3[confirm_time]=>1428482901[pv_total]=>0.00)[4]=>Array([u_id]=>2[userid]=>feng001[status]=>3[confirm_time]=>1428483116[pv_total]=>0.00)[5]=>Array([u_id]=>1[userid]=>feng003[status]=>3[confirm_time]=>1428483542[pv_total]=>20.00)[6]=>Array([u_id]=>1[userid]=>feng003[status]=>3[confirm_time]=>1428475881[pv_total]=>40.00)[7]=>Array([u_id]=>5[userid]=>feng005[status]=>3[confirm_time]=>1428474458[pv_total]=>100.00)[8]=>Array([u_id]=>4[userid]=>feng004[status]=>3[confirm_time]=>1428475275[pv_total]=>100.00)[9]=>Array([u_id]=>3[userid]=>feng002[status]=>3[confirm_time]=>1428475478[pv_total]=>100.00)[10]=>Array([u_id]=>2[userid]=>feng001[status]=>3[confirm_time]=>1428475622[pv_total]=>100.00)[11]=>Array([u_id]=>6[userid]=>feng006[status]=>3[confirm_time]=>1428479200[pv_total]=>100.00)[12]=>Array([u_id]=>6[userid]=>feng006[status]=>3[confirm_time]=>1428483519[pv_total]=>40.00));$count=count($res);$sql="insertintousers(periods,uid,username,pv)VALUES";foreach($resas$key=>$vo){if($key==$count-1){$sql.="(".$periods.",".$vo['u_id'].",'".$vo['userid']."',".$vo['pv_total'].")";}else{$sql.="(".$periods.",".$vo['u_id'].",'".$vo['userid']."',".$vo['pv_total']."),";}};M()->query($sql);这样能行吗?没怎么用过批量操作数据库,请指导。
查看完整描述

2 回答

?
RISEBY

TA贡献1856条经验 获得超5个赞

###代码大概像这样吧,手打的,没有测试###
php$sql='INSERTINTOTABLE(`u_uid`,`userid`,`status`,`confirm_time`,`pv_total`)VALUES';
foreach($arras$k=>$item){
$sql.='('.$item['u_uid'].','.$item['userid'].','.$item['status'].','.$item['confirm_time'].','.$item['pv_total'].'),';
}
$sql=rtrim($sql,',');
                            
查看完整回答
反对 回复 2019-04-08
?
弑天下

TA贡献1818条经验 获得超8个赞

对,就是这样的。
sqlINSERTINTOtable_name(列1,列2,...)VALUES(值1,值2,....),(值1,值2,....),(值1,值2,....)
其实编程这玩意儿,你试试看就知道可不可行了。
                            
查看完整回答
反对 回复 2019-04-08
  • 2 回答
  • 0 关注
  • 381 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信