PHP+mysql 如何批量插入数据?

  • 使用事务插入大量数据比较省时,参考:https://www.cnblogs.com/mracale/p/6554709.html
  • 或者使用拼接SQL方法,就是参考链接里的第三种方法
    INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....),(值1, 值2,....),(值1, 值2,....);

    使用PHP实现的话,一次性插入多条语句示例(减少数据库的链接次数,耗时更少)

    INSERT INTO blog_user (name, age, sex) VALUES ('zhangsan', 18, 1), ('lis', 19, 1), ('xiaohong', 17, 0);      //多条数据之间是逗号, 最后是分号。
  • PHP执行mysql语句,开启事务
    mysqli_autocommit($link, FALSE); //关闭自动提交
    mysqli_query($conn, "SET AUTOCOMMIT=0"); // 关闭自动提交,二选一
    mysqli_begin_transaction($link); //$link是链接数据库返回的资源,前面的链接都不写了
    mysqli_query($link, "ROLLBACK");  //执行失败,回滚操作
    mysqli_commit($link);    //提交事务
    mysqli_autocommit($link, true);  //开启自动提交