我将xls文件更改为csv格式以写入MySql。因为当我试图将字段从xls文件保存到MySQL时,我得到60秒的超时错误。现在,当我写echo
代码时,我只需5秒即可获得所有数据。但是,当我尝试将其保存到MySQL 60秒是不够的。这是我的代码:
$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个字段。
答案 0 :(得分:0)
您可以重新构建代码,以便只准备一次...
$csvfile = fopen("data.csv","r");
fgetcsv($csvfile);
$ekle = $dbpdo->prepare("INSERT INTO isletmeler (sno) VALUES (?)");
while (($data = fgetcsv($csvfile))!==FALSE){
$ekle->execute([$data[0]]);
}
这减少了每次重新准备语句的需要。