开发者社区> 问答> 正文

通过PHP数组插入多行到MySQL

通过PHP数组插入多行到MySQL

展开
收起
因为相信,所以看见。 2020-05-08 15:01:05 424 0
1 条回答
写回答
取消 提交回答
  • 阿里,我所有的向往

    INSERT在MySQL中,用多行汇编一条语句要比INSERT每行一条语句快得多。

    也就是说,听起来您可能会遇到PHP中的字符串处理问题,这实际上是算法问题,而不是语言问题。基本上,当使用大字符串时,您希望最大程度地减少不必要的复制。首先,这意味着您要避免串联。构建大型字符串(例如一次插入数百行)的最快,最节省内存的方法是利用implode()函数和数组分配。

    $sql = array(); foreach( $data as $row ) { $sql[] = '("'.mysql_real_escape_string($row['text']).'", '.$row['category_id'].')'; } mysql_query('INSERT INTO table (text, category) VALUES '.implode(',', $sql)); 这种方法的优点是,您无需复制和重新复制到目前为止已与每个串联组合的SQL语句。相反,PHP 在语句中执行一次implode()。这是一个巨大的胜利。

    如果您有很多列要放在一起,并且一个或多个列很长,则还可以构建一个内部循环以执行相同的操作,并使用implode()将values子句分配给外部数组。

    2020-05-08 15:01:34
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
搭建电商项目架构连接MySQL 立即下载
搭建4层电商项目架构,实战连接MySQL 立即下载
PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载

相关镜像