dsjojts9734 2012-04-30 17:27
浏览 35
已采纳

优化用于将27000 * 2密钥从纯文本文件插入到DB的代码

I need to insert data from a plain text file, explode each line to 2 parts and then insert to the database. I'm doing in this way, But can this programme be optimized for speed ?

the file has around 27000 lines of entry
DB structure [unique key (ext,info)]

  • ext [varchar]
  • info [varchar]

code:

$string = file_get_contents('list.txt');  
$file_list=explode("
",$string);  
$entry=0;  

$db = new mysqli('localhost', 'root', '', 'file_type');  
$sql = $db->prepare('INSERT INTO info (ext,info) VALUES(?, ?)');  

$j=count($file_list);  
for($i=0;$i<$j;$i++)  
{  
 $data=explode(' ',$file_list[$i],2);   
 $sql->bind_param('ss', $data[0], $data[1]);  
 $sql->execute();  
 $entry++;  
}   
$sql->close();  
echo $entry.' entry inserted !<hr>';
  • 写回答

5条回答 默认 最新

  • dsfsfdsf4544 2012-04-30 18:31
    关注

    Here is the magic solution [3 seconds vs 240 seconds]

    ALTER TABLE info DISABLE KEYS;

    $db->autocommit(FALSE);
    //insert
    $db->commit();
    

    ALTER TABLE info ENABLE KEYS;

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥17 pro*C预编译“闪回查询”报错SCN不能识别
  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向