如何写sql脚本文件批量插入mysql数据库

对于一些数据量较大的系统,数据库面临的问题除了查询效率低下,还有就是数据入库时间长。特别像报表系统,每天花费在数据导入上的时间可能会长达几个小时或十几个小时之久。因此,优化数据库插入性能是很有意义的。

操作方法

  • 01

    假定我们的表结构如下,代码如下:

  • 02

    通常情况下单条插入的sql语句我们会这么写:

  • 03

    mysql允许我们在一条sql语句中批量插入数据,如下sql语句:

  • 04

    如果我们插入列的顺序和表中列的顺序一致的话,还可以省去列名的定义,如下sql

  • 05

    上面看上去没什么问题,下面我来使用sql语句优化的小技巧,下面会分别进行测试,目标是插入一个空的数据表200W条数据 第一种方法:使用insert into 插入,最后显示为:23:25:05 01:32:05 也就是花了2个小时多! 代码如下:

  • 06

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

  • 07

    第三种方法:使用优化SQL语句:将SQL语句进行拼接,使用 insert into table () values (),(),(),()然后再一次性插入,如果字符串太长,则需要配置下MYSQL,在mysql 命令行中运行 :set global max_allowed_packet = 2*1024*1024*10;消耗时间为:11:24:06 11:25:06;插入200W条测试数据仅仅用了1分钟!代码如下:

  • 08

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

(0)

相关推荐

  • SQL Server 运行SQL脚本文件

    使用 sqlcmd 运行 Transact-SQL 脚本文件. 操作方法 01 打开命令提示符窗口. 02 在命令提示符窗口中,键入 sqlcmd -S myServer\instanceName - ...

  • sql脚本怎样保存、打开脚本文件?

    相信数据库对于软件开发.实施或者测试来说都不陌生,不论是创建数据库表还是查询.添加.删除.修改的一些操作语句,都需要脚本文件.以SqlServer2005为例介绍其操作过程,其他数据基本相同. 保存s ...

  • PowerDesigner:[5]导出SQL脚本

    紧接第4篇文章.我们生成好PDM模型后,需要导成sql脚本文件. 操作方法 01 鼠标单击Database菜单: 02 选择Generate  Database 选项: 03 先可以点击Preview ...

  • xampp集成环境怎样使用MySQL数据库

    xampp集成了服务器数据库,非常适合小白人群,今天小编我就来分享一下再xampp中怎样使用MySQL数据库,整个过程很简单哦. 操作方法 01 首先,找到xampp程序,点击"xampp ...

  • MySQL数据库备份和还原的常用命令

    数据库备份是网站管理员必须的一项工作任务,定期备份数据库必不可少,以便不时之需,下面列出几个备份数据库的常见命令操作: 操作方法 01 备份MySQL数据库的命令mysqldump -hhostnam ...

  • Linux下如何将数据库脚本文件从sh格式变为sql格式

    Linux下如何将数据库脚本文件从sh格式变为sql格式

  • 怎么将oracle的sql文件转换成mysql的sql文件

    怎么将sql文件导入PowerDesigner中的方法(将oracle的sql文件转换成mysql的sql文件)呢? 怎么将xx.sql文件的数据库结构导入powerdesigner 的方法呢? 现讲 ...

  • 如何向Oracle或MySQL数据库导入表格文件

    本文介绍一种简单的数据库表格导入方法,只需借助电脑上常用的软件,不需要安装第三方的数据库管理软件,个人认为十分有效,且做成了脚本方便下次继续使用. 操作方法 01 新建立要导入的表格文件,如下图所示. ...

  • 怎样将Oracle中的数据导出成SQL脚本?

    这个要求电脑上有PL/SQL Developer才行,要是不想安装,也可以用绿色版的. 操作方法 01 首先,打开PL/SQL Developer,选中要生成SQL的表,如下图所示. 02 鼠标点击右 ...