Php 加快MySql插入过程

Php 加快MySql插入过程,php,mysql,Php,Mysql,我有一个DB表,大约有40列,主要目的是尽快在数据库中插入记录。我使用PHP来实现这一点 问题是,要创建insert语句,我必须循环遍历for each。我不确定我是否做对了。请给我推荐最好的旅行。。这是一个例子 /// to loop through the available data /// $sqc = ""; for ($i=1; $i<=100; $i++){ if ($sqc == ""){ $sqc = "('".$array_value["col1"]."

我有一个DB表,大约有40列,主要目的是尽快在数据库中插入记录。我使用PHP来实现这一点

问题是,要创建insert语句,我必须循环遍历for each。我不确定我是否做对了。请给我推荐最好的旅行。。这是一个例子

/// to loop through the available data ///

$sqc = "";
for ($i=1; $i<=100; $i++){
  if ($sqc == ""){
     $sqc = "('".$array_value["col1"]."'.. till .. '".$array_value["col40"]."',)";
  } else {
     $sqc .= ",('".$array_value["col1"]."'.. till .. '".$array_value["col40"]."',)";
  }
}

/// finally the sql query ///

$sql_quyery = "INSERT INTO  table_name (`col1`,.. till.. ,`col40`) values ".$sqc;
///循环浏览可用数据///
$sqc=“”;

对于MySQL优化INSERT语句页面上建议的($i=1;$i),有一些方法可以实现这一点-

  • 如果要同时从同一客户机插入多行,请使用带有多个值列表的INSERT语句来一次插入多行。这要快得多(在某些情况下要快很多倍)而不是使用单独的单行INSERT语句。如果要将数据添加到非空表中,可以调整bulk\u INSERT\u buffer\u size变量,使数据插入更快

  • 从文本文件加载表格时,使用加载数据填充。这通常比使用插入语句快20倍

找到下面的链接- [MySQL指南]
[1] 只是一小部分贡献,但您可以使用绑定避免concat

$stmt = mysqli_prepare($yuor_conn, 
        "INSERT INTO  table_name (`col1`,.. till.. ,`col40`) VALUES (?, ... till..  ?)");

mysqli_stmt_bind_param($stmt, 'ss.......s',
       $array_value["col1"], $array_value["col2"], .. till.., 
                  $array_value["col40"]);

买一台更快的电脑?我的意思是,你给我们的信息中没有任何关于如何使事情更快的线索。我们不知道你为什么这么做,为什么这么匆忙,数据是什么,等等。你的问题太抽象,缺乏信息。你如何访问db msqli,PDO?你对我们的引擎做过研究吗例如,如果使用InnoDB?也可能重复@scaisEdge-使用msqli-codeigniterWhy循环100次?