999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

.NET實現(xiàn)大批量Excel數(shù)據(jù)導(dǎo)入SQL SERVER

2010-12-31 00:00:00馮煒銳尹強飛
商場現(xiàn)代化 2010年35期

[摘要] 人們習(xí)慣將待添加的記錄保存在Excel文件的作為存檔,然后再利用管理系統(tǒng)的數(shù)據(jù)導(dǎo)入功能將Excel數(shù)據(jù)批量的導(dǎo)入到數(shù)據(jù)庫中。實現(xiàn)Excel數(shù)據(jù)導(dǎo)入到SQL SERVER主要有兩種方法,使用DTS界面導(dǎo)入和編寫數(shù)據(jù)導(dǎo)入代碼。

[關(guān)鍵詞] 數(shù)據(jù)導(dǎo)入管理系統(tǒng)Excel工作效率

一、引言

數(shù)據(jù)導(dǎo)入在目前的管理信息系統(tǒng)中是較常見的功能。比如工作人員經(jīng)常會將下屬單位上報的數(shù)據(jù)保存在Excel文件中,然后利用系統(tǒng)的數(shù)據(jù)導(dǎo)入功能將相關(guān)數(shù)據(jù)一次性導(dǎo)入到數(shù)據(jù)庫管理系統(tǒng)中,避免了大量數(shù)據(jù)的逐條入錄,提高工作效率。然而數(shù)據(jù)導(dǎo)入的代碼編寫好壞也會對數(shù)據(jù)導(dǎo)入的性能產(chǎn)生影響。

二、SQL SERVER導(dǎo)入Excel

在應(yīng)用程序中經(jīng)常需要將外部的數(shù)據(jù)一次性導(dǎo)入到SQL SERVER 中,使用SQL SERVER導(dǎo)入數(shù)據(jù)的方法有很多種,對于DBA可以直接使用DBMS自帶的DTS工具完成數(shù)據(jù)的導(dǎo)入,操作非常方便,然而對于管理系統(tǒng)的使用人員是不能直接接觸數(shù)據(jù)庫管理系統(tǒng)的,無法采用這種方法實現(xiàn)數(shù)據(jù)的導(dǎo)入。因此,程序設(shè)計員應(yīng)該要將數(shù)據(jù)導(dǎo)入功能在程序中做好,直接提供給用戶去實現(xiàn),程序?qū)崿F(xiàn)數(shù)據(jù)導(dǎo)入的方法主要有三種,下面介紹各方法實現(xiàn)的原理。

1. insert into導(dǎo)入法

在SQL SERVER 中這種方法是最基本的數(shù)據(jù)導(dǎo)入方法,大多數(shù)程序開發(fā)人員在實現(xiàn)數(shù)據(jù)導(dǎo)入時首先都會想到這種方法。

語法:insert into tablename(字段名列表) values(值列表)

這種方法雖然簡單,但是不適合在實現(xiàn)插入大批量數(shù)據(jù)的操作上,根據(jù)實驗測試表明,如果插入100百萬條記錄,這種方法將耗時901599豪秒,約15分鐘。嚴(yán)重影響了工作效率,也會由于耗時過長而對導(dǎo)入的數(shù)據(jù)的正確性產(chǎn)生影響。

2. BULK insert導(dǎo)入法

BULK insert導(dǎo)入法對于大家可能不是很熟悉,但是當(dāng)要實現(xiàn)大批量數(shù)據(jù)的導(dǎo)入時采用這種方法將會給你帶來極高的效率。

語法:BULK insert tablename from '數(shù)據(jù)文件' WITH (FIELDTERMINATOR = ',',ROWTER /.,mbMINATOR='',BATCHSIZE = 100000)

還是以100萬條數(shù)據(jù)為測試,將其分五個線程,每個線程擔(dān)任20萬條數(shù)據(jù),每5萬條一個事物,五個線程同時啟動。根據(jù)測試實驗的數(shù)據(jù)表明,該方法耗時是21099豪秒,約21秒,速度提高了近42倍。

3. SqlBulkCopy類導(dǎo)入法

SqlBulkCopy類導(dǎo)入法引用了System.Data.SqlClient名稱空間,通過該空間創(chuàng)建SqlBulkCopy類來實現(xiàn)大批量數(shù)據(jù)導(dǎo)入的,具體的數(shù)據(jù)導(dǎo)入程序?qū)崿F(xiàn)如下所示。

//源數(shù)據(jù)

SqlDataReader reader = myCommand.ExecuteReader();

//目的數(shù)據(jù)

using (SqlBulkCopy bulkCopy = new

SqlBulkCopy(destinationConnection.ConnectionString))

{

bulkCopy.ColumnMappings.Add(\"ProductID\", \"ProductID\");

bulkCopy.ColumnMappings.Add(\"ProductName\", \"Name\");

bulkCopy.ColumnMappings.Add(\"QuantityPerUnit\", \"Quantity\");

bulkCopy.DestinationTableName = \"Products_TopSelling\";

bulkCopy.WriteToServer(reader);

}

使用SqlBulkCopy類導(dǎo)入法將大大的改善了大批量數(shù)據(jù)的導(dǎo)入性能,100萬條記錄的導(dǎo)入時間將縮短至4989耗秒,盡5秒鐘即可完成100完條數(shù)據(jù)的導(dǎo)入。

三、效率分析

針對以上三種導(dǎo)入法,同樣以100萬條記錄為例,在相同的軟件和硬件環(huán)境下進(jìn)行測試,結(jié)果顯示每種導(dǎo)入法的運行時間見表1所示。

表1 數(shù)據(jù)導(dǎo)入效率

導(dǎo)入法耗時(單位豪秒)

基本的insert into901599

BULK insert21099

SqlBulkCopy4989

四、結(jié)論

.NET實現(xiàn)將Excel數(shù)據(jù)導(dǎo)入到SQL SERVER的方法有多種,但是執(zhí)行的效率各不相同,實驗表明,選擇了好的數(shù)據(jù)導(dǎo)入法將會極大程度的提高工作效率,保證數(shù)據(jù)的完整性。特別是對于大批量數(shù)據(jù)導(dǎo)入時,更需要我們注意改善導(dǎo)入的性能,否則當(dāng)導(dǎo)入了大部分?jǐn)?shù)據(jù)后由于網(wǎng)絡(luò)或電腦故障等原因停止了數(shù)據(jù)的導(dǎo)入,下次又要花大量的時間來處理這些大批量數(shù)據(jù),嚴(yán)重的影響了工作效率。

參考文獻(xiàn):

[1]吳蓮貴 易瑜:基于ASP_NET的_Web網(wǎng)站設(shè)計_網(wǎng)絡(luò)教學(xué)系統(tǒng)的應(yīng)用與研究[J].計算機教育,2007.10

[2]鄭阿奇:SQL SERVER 使用教程.電子工業(yè)出版社.2005.5

主站蜘蛛池模板: 婷五月综合| 久久国产精品嫖妓| 国产清纯在线一区二区WWW| 日韩成人在线网站| 污网站在线观看视频| 狠狠做深爱婷婷久久一区| 欧美性精品| 99r在线精品视频在线播放 | 日韩欧美国产成人| 99性视频| 国产不卡网| 色婷婷成人网| 国产精品久久久久久搜索 | 一本大道无码高清| 亚洲色偷偷偷鲁综合| 亚洲码一区二区三区| 波多野结衣国产精品| 美女无遮挡被啪啪到高潮免费| 日韩色图区| 国产va在线观看免费| 亚洲成人高清无码| 88av在线看| 欧美不卡视频在线观看| jizz在线观看| 四虎精品黑人视频| 一级毛片免费不卡在线视频| 精品国产女同疯狂摩擦2| 色噜噜中文网| 漂亮人妻被中出中文字幕久久| 欧美成人午夜视频| 青青青国产视频手机| 亚洲中文制服丝袜欧美精品| 99这里只有精品在线| 香蕉久人久人青草青草| 欧美一级在线看| 国产成人精品午夜视频'| 呦女精品网站| 国产欧美在线视频免费| 亚洲日韩精品欧美中文字幕| 亚洲午夜福利在线| 久久99这里精品8国产| 又粗又大又爽又紧免费视频| 国内熟女少妇一线天| 亚洲天堂久久新| 99re视频在线| 99视频精品全国免费品| 国产AV毛片| 成人在线不卡| 国产玖玖视频| 一本大道视频精品人妻| 国产亚洲欧美日韩在线一区二区三区 | 自拍欧美亚洲| 国产成人无码综合亚洲日韩不卡| 一级在线毛片| 亚洲天堂久久| 亚洲IV视频免费在线光看| 欧美一级高清片欧美国产欧美| 免费大黄网站在线观看| 日本在线欧美在线| 2022国产91精品久久久久久| 九色在线观看视频| 色婷婷电影网| 青青草国产在线视频| 亚洲无码高清视频在线观看| 成人午夜亚洲影视在线观看| 99视频精品在线观看| 国产亚洲欧美在线中文bt天堂| 日本影院一区| 91黄色在线观看| 妇女自拍偷自拍亚洲精品| 久久综合结合久久狠狠狠97色 | 日韩精品毛片人妻AV不卡| 国产黄色免费看| 黄色a一级视频| 久久99久久无码毛片一区二区| 午夜成人在线视频| 国产va在线观看| 人妻一本久道久久综合久久鬼色| 玩两个丰满老熟女久久网| 岛国精品一区免费视频在线观看| 青草国产在线视频| 午夜不卡视频|