91网首页-91网页版-91网在线观看-91网站免费观看-91网站永久视频-91网站在线播放

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

SQLServer中采用bulk insert語(yǔ)句一次性插入十萬(wàn)級(jí)以上大量數(shù)據(jù)到指定的數(shù)據(jù)庫(kù)表(字段數(shù)量不同)

admin
2023年7月31日 21:54 本文熱度 1987

Sql server 的 bulk insert 語(yǔ)句可以高效的導(dǎo)入大數(shù)據(jù)量的平面文件(txt,csv文件)到數(shù)據(jù)庫(kù)的一張表中,其用法如下:

bulk insert tableName

from 'E:\\ClickSun\\ChinaIP.csv'

with

(fieldterminator=',',

rowterminator='\n')

其中"tableName"是數(shù)據(jù)庫(kù)表的名字,"E:\ClickSun\ChinaIP.csv"是導(dǎo)入平面文件的地址,fieldterminator 指定平面文件中列的分隔符是什么,rowterminator 指定平面文件中行的結(jié)束符是什么。


還可以使用 FIRSTROW LASTROW 限制行數(shù)。如下COPY前三行:

bulk insert tableName

from 'E:\\ClickSun\\ChinaIP.csv'

with

(fieldterminator=',',

rowterminator='\n',

FIRSTROW =1,

LASTROW=3)

要把平面文件數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫(kù)表中,平面文件只有9個(gè)字段,數(shù)據(jù)庫(kù)表有12個(gè)字段,字段數(shù)量不一致,怎么把平面文件字段的對(duì)應(yīng)到表的字段,如何用 bulk insert 來(lái)實(shí)現(xiàn)?


數(shù)據(jù)庫(kù)表 china_ip_range

create TABLE china_ip_range

(

    id INT identity,

    address varchar(25),

    IPS0 tinyint,

    IPS1 tinyint,

    IPS2 tinyint,

    IPS3 tinyint,

    IPE0 tinyint,

    IPE1 tinyint,

    IPE2 tinyint,

    IPE3 tinyint,

    input_ime datetime

)


平面文件數(shù)據(jù)是:E:\ClickSun\ChinaIP.csv

address,IPS0,IPS1,IPS2,IPS3,IPE0,IPE1,IPE2,IPE3

中國(guó)北京,1,2,2,0,1,2,2,255

中國(guó)北京,1,2,4,0,1,2,4,255

中國(guó)北京,1,2,5,0,1,2,5,255

中國(guó)北京,1,2,8,0,1,2,8,255

中國(guó)北京,1,4,4,0,1,4,4,255

中國(guó)北京,1,8,0,0,1,8,255,255

中國(guó)北京,1,12,0,0,1,12,255,255

中國(guó)北京,1,13,96,0,1,13,127,255

中國(guó)北京,1,14,128,0,1,14,191,255

中國(guó)北京,1,14,224,0,1,15,255,255

中國(guó)北京,1,45,0,0,1,45,255,255

中國(guó)北京,1,88,0,0,1,91,255,255

中國(guó)北京,1,92,0,0,1,95,255,255

中國(guó)北京,1,116,0,0,1,117,255,255

中國(guó)北京,1,119,0,0,1,119,255,255

中國(guó)北京,1,202,0,0,1,203,255,255

中國(guó)北京,8,130,0,0,8,130,55,255

中國(guó)北京,8,130,56,0,8,131,255,255

中國(guó)北京,11,164,228,0,11,164,233,255


先在E盤clicksun目錄下面存放一個(gè)格式化xml文件:E:\ClickSun\ChinaIP.xml

<?xml version="1.0"?>

<BCPFORMAT xmlns="http://schemas.microsoft.com/sqlserver/2004/bulkload/format" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

 <RECORD>

  <FIELD ID="1" xsi:type="CharTerm" TERMINATOR="," MAX_LENGTH="25" COLLATION="Chinese_PRC_CI_AS"/>

  <FIELD ID="2" xsi:type="CharTerm" TERMINATOR="," MAX_LENGTH="3" COLLATION="Chinese_PRC_CI_AS"/>

  <FIELD ID="3" xsi:type="CharTerm" TERMINATOR="," MAX_LENGTH="3" COLLATION="Chinese_PRC_CI_AS"/>

  <FIELD ID="4" xsi:type="CharTerm" TERMINATOR="," MAX_LENGTH="3" COLLATION="Chinese_PRC_CI_AS"/>

  <FIELD ID="5" xsi:type="CharTerm" TERMINATOR="," MAX_LENGTH="3" COLLATION="Chinese_PRC_CI_AS"/>

  <FIELD ID="6" xsi:type="CharTerm" TERMINATOR="," MAX_LENGTH="3" COLLATION="Chinese_PRC_CI_AS"/>

  <FIELD ID="7" xsi:type="CharTerm" TERMINATOR="," MAX_LENGTH="3" COLLATION="Chinese_PRC_CI_AS"/>

  <FIELD ID="8" xsi:type="CharTerm" TERMINATOR="," MAX_LENGTH="3" COLLATION="Chinese_PRC_CI_AS"/>

  <FIELD ID="9" xsi:type="CharTerm" TERMINATOR="\r\n" MAX_LENGTH="3" COLLATION="Chinese_PRC_CI_AS"/>

 </RECORD>

 <ROW>

  <COLUMN SOURCE="1" NAME="address" xsi:type="SQLVARYCHAR"/>

  <COLUMN SOURCE="2" NAME="IPS0" xsi:type="SQLTINYINT"/>

  <COLUMN SOURCE="3" NAME="IPS1" xsi:type="SQLTINYINT"/>

  <COLUMN SOURCE="4" NAME="IPS2" xsi:type="SQLTINYINT"/>

  <COLUMN SOURCE="5" NAME="IPS3" xsi:type="SQLTINYINT"/>

  <COLUMN SOURCE="6" NAME="IPE0" xsi:type="SQLTINYINT"/>

  <COLUMN SOURCE="7" NAME="IPE1" xsi:type="SQLTINYINT"/>

  <COLUMN SOURCE="8" NAME="IPE2" xsi:type="SQLTINYINT"/>

  <COLUMN SOURCE="9" NAME="IPE3" xsi:type="SQLTINYINT"/>

 </ROW>

</BCPFORMAT>


然后使用 bulk insert 語(yǔ)句時(shí),采用 FORMATFILE 參數(shù)指定該 ChinaIP.xml 文件:

BULK insert china_ip_range

    from 'E:\\ClickSun\\ChinaIP.csv'

WITH

(

    FORMATFILE = 'E:\\ClickSun\\ChinaIP.xml',

    FIELDTERMINATOR=',',

    ROWTERMINATOR='\n',

    FIRSTROW = 2

)

完整寫法:

set conn=opendb("oabusy","conn","accessdsn")

conn.execute("BULK insert china_ip_range from 'E:\\ClickSun\\ChinaIP.csv' WITH (FORMATFILE = 'E:\\ClickSun\\ChinaIP.xml',FIELDTERMINATOR = ',',ROWTERMINATOR = '\n',FIRSTROW = 2)")

conn.close

set conn=nothing

這樣 bulk insert 語(yǔ)句就會(huì)按照 ChinaIP.xml 文件中的列映射,將平面文件 E:\ClickSun\ChinaIP.csv 的各列數(shù)據(jù),依次插入到表 china_ip_rangeaddress、IPS0、IPS1、IPS2、IPS3、IPE0、IPE1、IPE2、IPE3這九個(gè)字段上了。測(cè)試了一個(gè)將近10萬(wàn)行的文件,執(zhí)行時(shí)間在毫秒級(jí),瞬間即操作完畢。


該文章在 2023/8/17 16:51:39 編輯過(guò)

全部評(píng)論1

admin
2023年7月31日 22:9

相關(guān)文章參考:


該評(píng)論在 2023/7/31 22:12:05 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 国产91丰满老 | 欧美一区二区三区性 | 九九国产福利伦理片 | 国产AⅤ精品 | 欧美在线三 | 欧美午夜日韩 | 日本不卡视频 | 激情欧美视频 | 国产午夜亚洲第一 | 日韩爽歪歪免费视频 | 国产外部专区一朋友 | 日韩成人激情综合网 | 国产女和黑人 | 日本一区不| 国产精品强上在线 | 制服丝袜综 | 青草玖热国产视频 | 九九热国产视频精品 | 国产欧美午夜视频 | 精品伊人网 | 国产91中文在| 国产色啪a∨在 | 区二区三区蜜芽 | 国产精品页 | 韩国女优 | 日韩国产三区四区 | 国产后入清纯学生妹 | 欧美综合视频 | 九九在线精品观看 | 欧美三级成人观看 | 国产精品玉足视频 | 国产乱子伦露脸在线 | 国产乱偷国产偷高清 | 伦视频在线观看 | 九一精品一区 | 国产免费毛不卡片 | 区水蜜桃在线观看 | 日本在线一 | 国产精品秘原创 | 国产亚洲精品资源在 | 中文字幕亚洲精品 |