Home  >  Article  >  php教程  >  PHP: 如何把数组导入MySQL数据库

PHP: 如何把数组导入MySQL数据库

WBOY
WBOYOriginal
2016-06-06 19:50:581355browse

考虑到性能当然不能按数组元素遍历来执行插入操作。 有两个方法可供选择,一种是把数据存入csv文件,然后执行load data infile 还有一种就是类似于sql server里面的bulk insert,使用insert语句插入批量数据,结合PHP的implode函数, 可以很简单的实现大批量

考虑到性能当然不能按数组元素遍历来执行插入操作。

有两个方法可供选择,一种是把数据存入csv文件,然后执行load data infile

还有一种就是类似于sql server里面的bulk insert,使用insert语句插入批量数据,结合PHP的implode函数,

可以很简单的实现大批量数组数据的一次性插入。


$statement = "INSERT INTO table (title, type, customer) VALUES ";
foreach( $data as $row) {
   $statement .= ' ("' . implode($row, '","') . '")';
}

不过大批量数据的插入,需要注意mysql在内存上有限制:

http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_bulk_insert_buffer_size

bulk_insert_buffer_size变量的默认大小为8M, 是指单个线程占用的大小限制,设置为0,表示不做限制。


参考链接:

http://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html



by iefreer

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn