php如何快速导入大量数据

php如何快速导入大量数据

php快速导入大量数据到数据库的方法

第一种方法:使用insert into 插入,代码如下:

$params = array(‘value'=>'50′);set_time_limit(0);echo date(“H:i:s”);for($i=0;$iinsert($params);};echo date(“H:i:s”);

登录后复制

最后显示为:23:25:05 01:32:05 也就是花了2个小时多!

第二种方法:使用事务提交,批量插入数据库(每隔10W条提交下)最后显示消耗的时间为:22:56:13 23:04:00 ,一共8分13秒  ,代码如下:

echo date(“H:i:s”);$connect_mysql->query(‘BEGIN');$params = array(‘value'=>'50′);for($i=0;$iinsert($params);if($i%100000==0){$connect_mysql->query(‘COMMIT');$connect_mysql->query(‘BEGIN');}}$connect_mysql->query(‘COMMIT');echo date(“H:i:s”);

登录后复制

第三种方法:使用优化SQL语句

立即学习“PHP免费学习笔记(深入)”;

将SQL语句进行拼接,使用 insert into table () values  (),(),(),()然后再一次性插入,如果字符串太长,则需要配置下MYSQL,

在mysql命令行中运行 :

set global max_allowed_packet =  2*1024*1024*10;

登录后复制

消耗时间为:11:24:06 11:25:06;

插入200W条测试数据仅仅用了1分钟!代码如下:

$sql= “insert into twenty_million (value) values”;for($i=0;$iquery($sql);

登录后复制

总结:在插入大批量数据时,第一种方法无疑是最差劲的,而第二种方法在实际应用中就比较广泛,第三种方法在插入测试数据或者其他低要求时比较合适,速度确实快。

推荐教程:PHP视频教程

以上就是php如何快速导入大量数据的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2152444.html

(0)
上一篇 2025年2月25日 05:49:13
下一篇 2025年2月19日 08:33:30

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • php如何连接sql

    参考php手册,对php连接sql server系列做出个小结。主要有五种方式: 一、通过mssql_系列函数,主要针对php5.3以下的版本和sqlserver2000及以上版本使用。 在php.ini中将;extension=php_m…

    2025年2月25日 编程技术
    200
  • php命令执行函数有哪些

    php执行系统命令的有几个常用的函数,如有:system函数、exec函数、popen函数,passthru,shell_exec函数他们都可以执行系统命令 Exec函数 Exec函数的语法为:(推荐学习:PHP编程从入门到精通) exec…

    2025年2月25日
    200
  • php命令模式什么意思

    命令模式(command)是一种非常常用的设计模式,其本质是对命令进行封装,将发出命令的责任和执行命令的责任分割开,降低对象之间的耦合度,新的命令可以很容易地加入到系统中。 命令模式之所以常用的优势就在于可以将请求发送者和接收者完全解耦,而…

    2025年2月25日
    200
  • php没有链表类型么

    php spl标准库里实现了几种简单的线性表和树型结构,其中包括了双链表和双链表实现的队列和栈、最大堆、最小堆和优先队列。双链表是一种重要的线性存储结构,对于双链表中的每个节点,不仅仅存储自己的信息,还要保存前驱和后继节点的地址。 双链表对…

    2025年2月25日
    200
  • php两个冒号什么意思

    在php类中静态方法和静态属性的引用方法 对类的静态属性和方法的直接引用,这种情况可以不需要实例化类而直接使用“::”调用。 当调用静态属性和静态方法时(推荐学习:PHP编程从入门到精通) ::与->的作用相同,只不过使用的对象不一样…

    2025年2月25日
    200
  • php连接mysql的几种方式

    php 5 及以上版本建议使用以下方式连接 mysql : MySQLi :MySQLi 只针对 MySQL 数据库,MySQLi 还提供了 API 接口。 PDO (PHP Data Objects):PDO 应用在 12 种不同数据库中…

    2025年2月25日
    200
  • php连接sftp有什么用

    sftp 协议  使用SSH协议进行FTP传输的协议叫SFTP(安全文件传输)Sftp和Ftp都是文件传输协议。 区别: sftp是ssh内含的协议(ssh是加密的telnet协议),只要sshd服务器启动了,它就可用,而且sftp安全性较…

    2025年2月25日
    200
  • php依赖注入是什么

    引言 你知道什么是依赖注入吗?依赖注入(di)的概念虽然听起来很深奥,但是如果你用过一些新兴的php框架的话,对于di一定不陌生,因为它们多多少少都用到了依赖注入来处理类与类之间的依赖关系。 php中传递依赖关系的三种方案 其实要理解DI,…

    2025年2月25日
    200
  • php以什么结尾

    我们知道php文件有开始符 ,开始符是必须要的,但是结束符却不可以乱用。 当php嵌入html页面中的时候,结束符是必须的,用以区分代码块。其他时候都不建议加,如果这个是一个被别人包含的程序,没有这个结束符,可以减少很多很多问题。 比如说:…

    2025年2月25日 编程技术
    100
  • php异常处理捕获哪些错误

    php的错误报告有三种: 1、错误,语法解析错误,致命错误 2、警告 3、注意 后果: 立即学习“PHP免费学习笔记(深入)”; 错误 -> 致命错误,会终止已下程序的执行,语法错误的话,PHP压根就没执行。 警告 -> 他不会…

    2025年2月25日
    200

发表回复

登录后才能评论