BULK INSERT如何将大量数据高效地导入SQL Server
转载自:http://database.51cto.com/art/201108/282631.htm
BULK INSERT如何将大量数据高效地导入SQL Server
本文我们详细介绍了BULK INSERT将大量数据高效地导入SQL Server数据库的方法,希望本次的介绍能够对您有所帮助。
AD:
WOT2014课程推荐:实战MSA:用开源软件搭建微服务系统
在实际的工作需要中,我们有时候需将大量的数据导入到数据库中。这时候我们不得不考虑的就是效率问题。本文我们就介绍了一种将大量数据高效地导入SQL Server数据库的方法,该方法是使用BULK INSERT来实现的,接下来就让我们来一起了解一下这部分内容。
源数据(文本文件)
下载了大量的股票历史数据,都是文本格式的:
每个文件第一行包含股票代码,股票名称,数据类型.第二行是数据列的名称:
数据表
在数据库中新建了一个数据表TestStock,并设置以下字段,但没有关于"成交额"的字段,因为以后的计算不会用到这个数据。另外这里关于价格的字段没有使用money数据类型,decimal足矣。
编写格式化文件
当前数据的格式化文件为:
- <?xmlversionxmlversion="1.0"?>
- <BCPFORMAT
- xmlns="http://schemas.microsoft.com/sqlserver/2004/bulkload/format"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <RECORD>
- <FIELDIDFIELDID="1"xsi:type="CharTerm"TERMINATOR=","/>
- <FIELDIDFIELDID="2"xsi:type="CharTerm"TERMINATOR=","/>
- <FIELDIDFIELDID="3"xsi:type="CharTerm"TERMINATOR=","/>
- <FIELDIDFIELDID="4"xsi:type="CharTerm"TERMINATOR=","/>
- <FIELDIDFIELDID="5"xsi:type="CharTerm"TERMINATOR=","/>
- <FIELDIDFIELDID="6"xsi:type="CharTerm"TERMINATOR=","/>
- <FIELDIDFIELDID="7"xsi:type="CharTerm"TERMINATOR="\r\n"/>
- </RECORD>
- <ROW>
- <COLUMNSOURCECOLUMNSOURCE="1"NAME="Date"xsi:type="SQLDATE"/>
- <COLUMNSOURCECOLUMNSOURCE="2"NAME="OpenPrice"xsi:type="SQLDECIMAL"PRECISION="6"SCALE="2"/>
- <COLUMNSOURCECOLUMNSOURCE="3"NAME="HighPrice"xsi:type="SQLDECIMAL"PRECISION="6"SCALE="2"/>
- <COLUMNSOURCECOLUMNSOURCE="4"NAME="LowPrice"xsi:type="SQLDECIMAL"PRECISION="6"SCALE="2"/>
- <COLUMNSOURCECOLUMNSOURCE="5"NAME="ClosePrice"xsi:type="SQLDECIMAL"PRECISION="6"SCALE="2"/>
- <COLUMNSOURCECOLUMNSOURCE="6"NAME="Volumn"xsi:type="SQLINT"/>
- </ROW>
- </BCPFORMAT>
暂且先保存在C盘目录下吧,文件名叫BCPFORMAT.xml
编写BULKINSERT语句:
- BULKINSERTTestStock
- FROM'C:\SH600475.txt'
- WITH(
- FORMATFILE='C:\BCPFORMAT.xml',
- FIELDTERMINATOR=',',
- ROWTERMINATOR='\r\n')
执行BULKINSERT的速度很快,结果如下:
同样的效果,如果从文本中读一行记录,执行一次INSERTINTO语句的话,需要10秒左右,由此可见BULKINSERT的高效。
关于使用BULK INSERT将大量数据导入SQL Server数据库的知识就介绍到这里了,希望本次的介绍能够对您有所帮助。
转载于:https://www.cnblogs.com/XuZhu-FengQingYang/p/3783449.html
BULK INSERT如何将大量数据高效地导入SQL Server相关推荐
- BULK INSERT如何将大量数据高效地导入SQL Server(转)
在实际的工作需要中,我们有时候需将大量的数据导入到数据库中.这时候我们不得不考虑的就是效率问题.本文我们就介绍了一种将大量数据高效地导入SQL Server数据库的方法,该方法是使用BULK INSE ...
- Python 批量处理 Excel 数据后,导入 SQL Server
作者 | 老表 来源 | 简说Python 1.前言 2.开始动手动脑 2.1 拆解+明确需求 2.2 安装第三方包 2.3 读取excel数据 2.4 特殊数据数据处理 2.5 其他需求 2.6 完 ...
- Python批量处理Excel数据后,导入SQL Server
1.前言 2.开始动手动脑 2.1 拆解+明确需求 2.2 安装第三方包 2.3 读取excel数据 2.4 特殊数据数据处理 2.5 其他需求 2.6 完整调用代码 3.后言后语 1.前言 今天我们 ...
- 如何将数据从Excel文件导入SQL Server数据库
There are many ways to import data from an Excel file to a SQL Server database using: 有多种方法可以使用以下方法将 ...
- Bulk Insert:将文本数据(csv和txt)导入到数据库中
将文本数据导入到数据库中的方法有很多,将文本格式(csv和txt)导入到SQL Server中,bulk insert是最简单的实现方法 1,bulk insert命令,经过简化如下 BULK INS ...
- 使用SSIS包导入SQL Server FILESTREAM数据
初始配置 (Initial configuration) We have been exploring the SQL Server FILESTREAM feature in this ongoin ...
- net以execl做数据库_C#.NET Excel文件数据导入SQL Server数据库完整代码
展开全部 在日常的项目中,Excel,Word,txt等格式的数62616964757a686964616fe58685e5aeb931333337626235据导入到数据库中是很常见 这里将分为.n ...
- 将Excel数据导入SQL Server数据库
遇到了一个需求,需要将Excel中的数据导入SQL Server数据库中,当然,不是使用企业管理器之类的直接导入数据的那种,而是要做到程序中.本来我最初的考虑是将Excel中的数据读到dataset中 ...
- python怎么导入sql数据库,##使用python将excel表中数据导入sql server数据库
如何用python将excel数据导入到postgresql数据库中 把excel表格另存为csv文件 python将exce文件含有多个sheet同时l导入sqlserver数据库 需要使用xlrd ...
最新文章
- pandas将dataframe原有的数据列名称转化为整数数值列名称(convert dataframe column labelsl into integers)
- RxJavaMVPRetrofit
- response设置content-type
- Apple Music 会员免费领啦!
- [转]深入理解 __doPostBack
- IPC$连接常见问答
- B站百万播放量Java零基础教程视频(适合Java 0基础,Java初学入门),史上最细Java零基础教学视频
- Raft算法的Leader选举和日志复制过程
- 通用窗口类 Inventory Pro 2.1.2 Demo1(中)
- C#socket编程序(二)
- c++常用备忘(持续更新)
- 软件实习项目4——校园一卡通管理系统(实验准备与设计)
- IDA Pro使用技巧及大杂烩
- web_0207_1
- 慕课软件质量保证与测试(第九章.程序中隐藏错误数量估计)
- Atitit 工程师程序员技术级别对应表与主要特征 P1--p6 说明 类别 职称 对应技术标志 P5 高级工程师 工程师类 一般四五年 P6 资深开发 工程师类 78年经历 P7 P7
- com、cn域名到期删除时间
- IDE输入import语句自动消失
- FS2222可调过压过流芯片IC,40V耐压过压保护可调OVP可调OCP
- 当语音遇到人工智能,走进《智能语音时代》
热门文章
- 很励志的故事(尸山代码)
- 小米门卡协议加载失败_小米门禁卡没反应怎么回事
- ajax上传 java,javaWeb中使用ajax上传文件
- 计算机专业的就业前景怎么样?
- 小数乘分数怎么算过程_小数乘分数如何计算?
- P4735 最大异或和 01可持久化Trie树模板
- [luogu] P4735 最大异或和
- 生成化学表达式下标、上标数字
- Swagger-ui.html页面简单的修改
- 华中科技大学计算机专业排名2018,2018华中科技大学专业排名及分数线 王牌专业有哪些...