成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

BULK INSERT如何將大量數據高效地導入SQL Server

數據庫 SQL Server
本文我們詳細介紹了BULK INSERT將大量數據高效地導入SQL Server數據庫的方法,希望本次的介紹能夠對您有所幫助。

在實際的工作需要中,我們有時候需將大量的數據導入到數據庫中。這時候我們不得不考慮的就是效率問題。本文我們就介紹了一種將大量數據高效地導入SQL Server數據庫的方法,該方法是使用BULK INSERT來實現的,接下來就讓我們來一起了解一下這部分內容。

源數據(文本文件)

下載了大量的股票歷史數據,都是文本格式的:

BULK INSERT如何將大量數據高效地導入SQL Server

每個文件第一行包含股票代碼,股票名稱,數據類型.第二行是數據列的名稱:

BULK INSERT如何將大量數據高效地導入SQL Server

數據表

在數據庫中新建了一個數據表TestStock,并設置以下字段,但沒有關于"成交額"的字段,因為以后的計算不會用到這個數據。另外這里關于價格的字段沒有使用money數據類型,decimal足矣。

BULK INSERT如何將大量數據高效地導入SQL Server

編寫格式化文件

當前數據的格式化文件為:

  1. <?xmlversionxmlversion="1.0"?> 
  2.  
  3. <BCPFORMAT 
  4.  
  5. xmlns="http://schemas.microsoft.com/sqlserver/2004/bulkload/format" 
  6.  
  7. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
  8.  
  9. <RECORD> 
  10.  
  11. <FIELDIDFIELDID="1"xsi:type="CharTerm"TERMINATOR=","/> 
  12.  
  13. <FIELDIDFIELDID="2"xsi:type="CharTerm"TERMINATOR=","/> 
  14.  
  15. <FIELDIDFIELDID="3"xsi:type="CharTerm"TERMINATOR=","/> 
  16.  
  17. <FIELDIDFIELDID="4"xsi:type="CharTerm"TERMINATOR=","/> 
  18.  
  19. <FIELDIDFIELDID="5"xsi:type="CharTerm"TERMINATOR=","/> 
  20.  
  21. <FIELDIDFIELDID="6"xsi:type="CharTerm"TERMINATOR=","/> 
  22.  
  23. <FIELDIDFIELDID="7"xsi:type="CharTerm"TERMINATOR="\r\n"/> 
  24.  
  25. </RECORD> 
  26.  
  27. <ROW> 
  28.  
  29. <COLUMNSOURCECOLUMNSOURCE="1"NAME="Date"xsi:type="SQLDATE"/> 
  30.  
  31. <COLUMNSOURCECOLUMNSOURCE="2"NAME="OpenPrice"xsi:type="SQLDECIMAL"PRECISION="6"SCALE="2"/> 
  32.  
  33. <COLUMNSOURCECOLUMNSOURCE="3"NAME="HighPrice"xsi:type="SQLDECIMAL"PRECISION="6"SCALE="2"/> 
  34.  
  35. <COLUMNSOURCECOLUMNSOURCE="4"NAME="LowPrice"xsi:type="SQLDECIMAL"PRECISION="6"SCALE="2"/> 
  36.  
  37. <COLUMNSOURCECOLUMNSOURCE="5"NAME="ClosePrice"xsi:type="SQLDECIMAL"PRECISION="6"SCALE="2"/> 
  38.  
  39. <COLUMNSOURCECOLUMNSOURCE="6"NAME="Volumn"xsi:type="SQLINT"/> 
  40.  
  41. </ROW> 
  42.  
  43. </BCPFORMAT> 

暫且先保存在C盤目錄下吧,文件名叫BCPFORMAT.xml

編寫BULKINSERT語句:

  1. BULKINSERTTestStock  
  2.  
  3. FROM'C:\SH600475.txt'  
  4.  
  5. WITH(  
  6.  
  7. FORMATFILE='C:\BCPFORMAT.xml',  
  8.  
  9. FIELDTERMINATOR=',',  
  10.  
  11. ROWTERMINATOR='\r\n'

執行BULKINSERT的速度很快,結果如下:

BULK INSERT如何將大量數據高效地導入SQL Server

同樣的效果,如果從文本中讀一行記錄,執行一次INSERTINTO語句的話,需要10秒左右,由此可見BULKINSERT的高效。

關于使用BULK INSERT將大量數據導入SQL Server數據庫的知識就介紹到這里了,希望本次的介紹能夠對您有所幫助。

【編輯推薦】

  1. SQL Server 2005數據庫nolock使用詳解
  2. SQL Server 2005無法連接到本地服務器的解決
  3. SQL Server如何查詢當前服務器有多少連接請求
  4. SQL Server通過整理索引碎片和重建索引提高速度
  5. SQL Server 2008安裝無法通過性能計數器一致性的解決
責任編輯:趙鵬 來源: 博客園
相關推薦

2011-08-01 09:09:07

SQL Server SQL Server 數據庫

2017-11-21 08:36:00

MongoDB關系型數據庫數據導入

2011-07-08 14:54:38

系統監視器 SQL Server

2018-10-22 14:48:39

KafkaHadoop代碼

2011-07-28 18:08:51

SQL Server MySQL

2010-04-16 14:26:14

bulk Insert

2019-09-27 12:44:03

數據建模企業數據存儲

2010-06-24 09:47:47

SQL Server

2011-07-12 13:01:11

ExcelOracleSql Server

2021-03-08 07:46:53

Git開源控制系統

2021-01-28 09:00:00

SQL數據庫NoSQL

2011-07-28 15:53:06

SQL Server數合并查詢

2018-10-15 13:57:38

Hadoop數據庫MySQL

2022-05-11 09:51:10

云計算公共云

2021-08-05 18:34:55

IntelliJ ID高效

2011-03-11 13:26:23

SQL Server數導入數據

2023-12-29 07:04:28

Go項目Docker編寫

2023-02-17 12:07:45

ChatGPTPython

2019-10-17 09:45:02

照片SD卡Windows 10

2017-06-28 08:14:57

數據庫區塊鏈比特幣
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: h肉视频 | 一级黄a| 国产成人精品综合 | 羞羞视频免费观看 | 亚洲一级视频在线 | 亚洲精品欧美 | 人人射人人插 | 亚洲人的av | 蜜桃视频在线观看免费视频网站www | 91国内视频在线 | 欧美精品久久 | 亚洲欧美日韩精品久久亚洲区 | 青青草亚洲 | 一级免费视频 | www.干| 色免费在线视频 | 国产午夜精品久久久 | 在线成人www免费观看视频 | 999re5这里只有精品 | 美女毛片免费看 | 午夜在线观看免费 | 国产精品二区三区在线观看 | 精品一区二区在线视频 | 欧美日韩免费视频 | 99精品视频免费在线观看 | 91资源在线播放 | 久久久久久久久国产成人免费 | 欧美激情一区二区 | 日韩国产一区 | 欧美aⅴ| 女人牲交视频一级毛片 | 国内成人免费视频 | 在线播放国产一区二区三区 | 91精品久久久久 | 久久一区二区免费视频 | 黄视频免费 | 欧美日韩视频 | 国产精品区二区三区日本 | 国产成人久久精品 | 国产精品自拍一区 | 国产精品欧美一区喷水 |