首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将CSV写入MySql速度较慢

将CSV写入MySql速度较慢
EN

Stack Overflow用户
提问于 2018-03-06 03:08:13
回答 1查看 145关注 0票数 0

为了写入MySql,我将xls文件更改为csv格式。因为当我试图将字段从xls文件保存到MySQL时,我得到了60秒的超时错误。现在,当我编写echo代码时,我可以在5秒内获得所有数据。但当我尝试将其保存到MySQL时,60秒是不够的。下面是我的代码:

代码语言:javascript
复制
$csvfile = fopen("data.csv","r");
    fgetcsv($csvfile);
    while (($data = fgetcsv($csvfile))!==FALSE){
        $ekle = $dbpdo->prepare("INSERT INTO isletmeler (sno) VALUES ('".$data[0]."')");
        $ekle->execute();   
    }

如何加快将数据保存到MySql的速度?我在csv中有29列,但我尝试只保存1列,看看它是否保存了我的所有数据。我在csv中有大约2700个字段,但它只在60秒内保存了大约1000个字段。

EN

回答 1

Stack Overflow用户

发布于 2018-03-06 03:19:47

您可以重新构造代码,以便只准备一次……

代码语言:javascript
复制
$csvfile = fopen("data.csv","r");

fgetcsv($csvfile);
$ekle = $dbpdo->prepare("INSERT INTO isletmeler (sno) VALUES (?)");
while (($data = fgetcsv($csvfile))!==FALSE){
    $ekle->execute([$data[0]]);   
}

这减少了每次重新准备语句的需要。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49117748

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档