设为首页
收藏本站
Archiver
用户
登录
入住
用户名
Email
自动登录
找回密码
密码
登录
入住 CI 中国社区
首页
返回 CodeIgniter 中国首页
论坛
BBS
导读
Guide
个人主页
Space
中文手册
搜索
CodeIgniter 搜索引擎
视频教程
案例
任务
搜索
搜索
本版
帖子
用户
设为首页
收藏本站
Archiver
开启辅助访问
切换到宽版
日志
相册
分享
记录
CodeIgniter4
CodeIgniter3
CodeIgniter2
帖子
好友
道具
勋章
收藏
任务
记录
留言板
设置
我的收藏
退出
腾讯QQ
微信登录
CodeIgniter 中国开发者社区
»
论坛
›
CodeIgniter 开发
›
CodeIgniter 问答求助
›
此更新代码有没有办法提高效率
返回列表
查看:
1677
|
回复:
4
[讨论/交流]
此更新代码有没有办法提高效率
[复制链接]
外星人
外星人
当前离线
积分
118
IP卡
狗仔卡
发表于 2013-9-7 12:08:30
|
显示全部楼层
|
阅读模式
foreach($param as $k=>$v){
$arr[$k] = array('pro_id'=>$v['id'],'addtime'=>$shij,'qpsl'=>$v['qpsl'],'discount'=>1);
}
上面这段代码是将数组重新排列
foreach($param as $k=>$v){
$this->odb->updatetable('hx_order_product','order_id = '.$id.' and pro_bh="'.$v['bh'].'"',$arr[$k]);
}
代码更新效率不高,200条不到的数据,运行要20-30秒,而且cpu占用到50-80%瞬间网站卡的不行!
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
显身卡
外星人
外星人
当前离线
积分
118
IP卡
狗仔卡
楼主
|
发表于 2013-9-10 10:26:52
|
显示全部楼层
foreach($param as $k=>$v){
$this->db->query("UPDATE hx_order_product SET pro_id =".$v['id'].", addtime = ".$shij.", qpsl = ".$v['qpsl'].", discount = 1 WHERE order_id = ".$id." and pro_bh= '".$v['bh']."'");
}
这样应该看的更加明白一点,就这语句,200条数据,cpu占用50-80%,要运行20-30秒,有没有办法优化呀
回复
支持
反对
使用道具
举报
显身卡
Raphael
Raphael
当前离线
积分
235
IP卡
狗仔卡
发表于 2013-9-10 11:27:51
|
显示全部楼层
一條sql語法,
被執行了200次,
會有什麼好效能?
回复
支持
反对
使用道具
举报
显身卡
外星人
外星人
当前离线
积分
118
IP卡
狗仔卡
楼主
|
发表于 2013-9-12 16:47:56
|
显示全部楼层
就是想问下高手有没有什么办法能更有效率点,小弟我初学的
回复
支持
反对
使用道具
举报
显身卡
Raphael
Raphael
当前离线
积分
235
IP卡
狗仔卡
发表于 2013-9-13 10:37:13
|
显示全部楼层
請檢視一下下列的問題
1.資料表設計---能不能符合多表關連,有沒有使用適合的字段類型,確認操作條件符合
2.程式設計--符合MVC架構,使用OO,符合CI規範,對Mysql操作熟練.
3.對Framework(CodeIginter)操作嫻熟.
4.對LAMP架構清礎
5.找到好的書,或者請教懂的人.
比如樓主的sql操作,
可以試者使用 $this->db->update_batch();
回复
支持
反对
使用道具
举报
显身卡
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
入住 CI 中国社区
本版积分规则
发表回复
回帖后跳转到最后一页