亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于DTS的汽車檢測線異構(gòu)數(shù)據(jù)源轉(zhuǎn)換研究

        2012-04-26 02:31:20夏均忠馬宗坡白云川
        中國測試 2012年4期
        關(guān)鍵詞:數(shù)據(jù)庫汽車檢測

        夏均忠,馬宗坡,白云川,王 萌

        (軍事交通學(xué)院汽車工程系,天津 300161)

        0 引 言

        當(dāng)前各級、各類檢測站中多種檢測方式和檢測控制系統(tǒng)并存的現(xiàn)狀,造成了檢測機(jī)構(gòu)數(shù)據(jù)庫和數(shù)據(jù)庫表異構(gòu)現(xiàn)象明顯的問題,給數(shù)據(jù)的匯總、分析等造成很大影響。數(shù)據(jù)庫的異構(gòu)體現(xiàn)在各檢測機(jī)構(gòu)控制系統(tǒng)使用的不同數(shù)據(jù)庫,如Access、SQL Server 2000等;數(shù)據(jù)庫表的異構(gòu)體現(xiàn)在字段名和表名的異構(gòu),相關(guān)字段由于對數(shù)據(jù)值的要求不同而產(chǎn)生的異構(gòu)等[1-3]。

        經(jīng)過十幾年的發(fā)展,各檢測機(jī)構(gòu)已經(jīng)保存了大量的日常業(yè)務(wù)數(shù)據(jù)。為了統(tǒng)一規(guī)范這些數(shù)據(jù)源,從而有效地進(jìn)行檢測數(shù)據(jù)匯總、統(tǒng)計、分析和決策,本文研究了基于DTS的汽車檢測線Access數(shù)據(jù)源到SQL Server數(shù)據(jù)源的轉(zhuǎn)換。

        1 數(shù)據(jù)轉(zhuǎn)換服務(wù)

        數(shù)據(jù)轉(zhuǎn)換服務(wù)(digital transformation service,DTS)是SQL Server的一個組件,它提供了多種異構(gòu)數(shù)據(jù)庫之間的數(shù)據(jù)轉(zhuǎn)換模型,可用于在一個或多個數(shù)據(jù)源(如 SQL Server、Excel、Access、ORACLE)間進(jìn)行數(shù)據(jù)導(dǎo)入、導(dǎo)出和轉(zhuǎn)換。DTS還可通過ActiveX腳本語言,如VB Script來轉(zhuǎn)換數(shù)據(jù),數(shù)據(jù)轉(zhuǎn)換腳本可以執(zhí)行能在腳本語言中執(zhí)行的任何動作,這種靈活性使DTS成了一個強大的數(shù)據(jù)遷移工具[4-7]。

        DTS包的對象結(jié)構(gòu)如圖1所示。連接對象定義數(shù)據(jù)源及數(shù)據(jù)目的;任務(wù)對象定義工作項目,例如ActiveX轉(zhuǎn)化、數(shù)據(jù)驅(qū)動的查詢?nèi)蝿?wù)等;步驟對象定義任務(wù)對象執(zhí)行的次序。

        圖1 DTS轉(zhuǎn)換包結(jié)構(gòu)圖

        1.1 讀取數(shù)據(jù)源的元數(shù)據(jù)

        在關(guān)系數(shù)據(jù)庫中,元數(shù)據(jù)就是對表、列等的定義。通過ADO中CONNECTION對象的GetTableNames方法可以得到數(shù)據(jù)源的表信息,而通過ADO中RECORDSET對象的FieldDefs屬性可以得到各種列信息和類型信息[8]。

        在得到元數(shù)據(jù)前,必須創(chuàng)建CONNECTION對象連接數(shù)據(jù)源,通過數(shù)據(jù)集對象RECORDSET來打開相應(yīng)的數(shù)據(jù)表,取得相應(yīng)的元數(shù)據(jù)。

        1.2 轉(zhuǎn)換數(shù)據(jù)類型的對應(yīng)

        對不同數(shù)據(jù)庫系統(tǒng),每個DBMS都定義了一套自己的數(shù)據(jù)類型,但不論數(shù)據(jù)類型在各個系統(tǒng)中如何變化,其功能都滿足用戶的數(shù)據(jù)處理基本要求。如數(shù)值型,包括整型、實型、浮點型、雙精度型等;字符型,包括定長、變長等;日期型,包括年、月、日和小時、分、秒等。

        異構(gòu)數(shù)據(jù)庫數(shù)據(jù)類型轉(zhuǎn)換的關(guān)鍵是找出其中的對應(yīng)關(guān)系。

        1.3 數(shù)據(jù)轉(zhuǎn)換的沖突及處理

        在數(shù)據(jù)轉(zhuǎn)換過程中,必須要確定兩種模型中所存在的各種語法和語義上的沖突,這些沖突可能包括:

        (1)命名沖突。源數(shù)據(jù)源的標(biāo)識符可能是目的數(shù)據(jù)源中的保留字。

        (2)格式?jīng)_突。同一種數(shù)據(jù)類型可能有不同的表示方法和語義差異,如檢測線數(shù)據(jù)庫中有用大寫英文字母“E,T,F(xiàn)”表示檢測結(jié)果合格與否,也有直接用漢字表示。

        (3)類型沖突。不同數(shù)據(jù)庫的同一種數(shù)據(jù)類型存在精度之間的差異。

        對于數(shù)據(jù)轉(zhuǎn)換中的沖突最理想處理方法是借助轉(zhuǎn)換工具自動實現(xiàn)。

        1.4 數(shù)據(jù)轉(zhuǎn)換的完整性

        數(shù)據(jù)的完整性主要是指數(shù)據(jù)的正確性和相容性。如發(fā)動機(jī)號碼或底盤號碼不唯一。在關(guān)系型數(shù)據(jù)庫中,主要有實體完整性、參照完整性和用戶定義的完整性3類。實體完整性和參照完整性是關(guān)系模型必須滿足的完整性約束條件[9-11]。

        在數(shù)據(jù)轉(zhuǎn)換過程中依據(jù)數(shù)據(jù)目的表的約束,對導(dǎo)入數(shù)據(jù)進(jìn)行一一核查,出現(xiàn)不符合完整性約束的垃圾數(shù)據(jù)時,應(yīng)予以即時清除。

        2 汽車檢測線DTS轉(zhuǎn)換包設(shè)計

        設(shè)計DTS轉(zhuǎn)換包的流程依次為建立連接對象、建立任務(wù)對象、建立步驟對象。

        2.1 建立DTS連接

        DTS提供了3種連接類型:

        (1)數(shù)據(jù)源連接。通過OLE DB Provider或ODBC驅(qū)動程序來連接數(shù)據(jù)源或數(shù)據(jù)目的。

        (2)文件連接。用于連接以文本文件作為數(shù)據(jù)源與數(shù)據(jù)目的。

        (3)Microsoft Data Link連接。DTS包使用 Microsoft Data Link文件建立OLE DB連接以解決執(zhí)行時的連接問題。

        數(shù)據(jù)源連接與文件連接用于在建立DTS包時連接相關(guān)屬性已經(jīng)確定的數(shù)據(jù)源與數(shù)據(jù)目的連接,而Microsoft Data Link連接用于在建立DTS包時連接相關(guān)屬性不確定,而只有在執(zhí)行DTS包前才能確定連接屬性的數(shù)據(jù)連接。

        由于在建立DTS轉(zhuǎn)換包時無法確定源數(shù)據(jù)庫所在目錄、用戶密碼等連接屬性,所以對數(shù)據(jù)源采用Microsoft Data Link連接。在開始轉(zhuǎn)換前通過選擇和輸入獲取源數(shù)據(jù)庫的連接相關(guān)屬性。

        而數(shù)據(jù)目的連接屬性在建立DTS包前就已確定,所以對數(shù)據(jù)目的的連接采用數(shù)據(jù)源連接方式。

        2.2 建立DTS任務(wù)

        在新建的DTS包中使用數(shù)據(jù)驅(qū)動的查詢?nèi)蝿?wù)和ActiveX腳本任務(wù)來完成DTS任務(wù)。數(shù)據(jù)驅(qū)動的查詢?nèi)蝿?wù)用于數(shù)據(jù)Transact-SQL操作,完成新建、修改與刪除數(shù)據(jù)目的中的數(shù)據(jù)記錄。ActiveX腳本任務(wù)用來完成其他操作,如訪問配置文件、全局變量的設(shè)置與訪問、數(shù)據(jù)記錄集的訪問等。

        共建立了17個DTS任務(wù)來完成數(shù)據(jù)轉(zhuǎn)換任務(wù),這些任務(wù)分為3類:

        (1)車輛基本信息的轉(zhuǎn)換。包括車輛VIN、發(fā)動機(jī)號碼、底盤號碼、車輛顏色、使用階段、車牌號碼等信息的轉(zhuǎn)換。

        (2)檢測站信息的轉(zhuǎn)換。包括檢測站基本信息轉(zhuǎn)換、設(shè)備管理數(shù)據(jù)轉(zhuǎn)換。

        (3)檢測結(jié)果的轉(zhuǎn)換。包括車輛檢測信息轉(zhuǎn)換、車輛評價結(jié)果轉(zhuǎn)換、各工位檢測結(jié)果轉(zhuǎn)換等。

        圖2為車輛基本信息轉(zhuǎn)換任務(wù)圖,主要完成車輛基本信息的轉(zhuǎn)換工作。

        圖2 車輛基本信息轉(zhuǎn)換任務(wù)圖

        車輛基本信息轉(zhuǎn)換任務(wù)中使用的是數(shù)據(jù)驅(qū)動的查詢?nèi)蝿?wù),通過VB Script語言來進(jìn)行數(shù)據(jù)字段的轉(zhuǎn)換。部分VB Script腳本代碼如下:

        2.3 建立DTS步驟

        DTS步驟是建立一個工作流結(jié)構(gòu)以控制DTS包中各個DTS任務(wù)的執(zhí)行順序。每一個DTS任務(wù)必須至少與一個DTS步驟相關(guān)聯(lián),否則該DTS任務(wù)將不會被執(zhí)行。通過建立DTS步驟完成汽車檢測線Access數(shù)據(jù)源到SQL Server數(shù)據(jù)源的數(shù)據(jù)轉(zhuǎn)換服務(wù)。

        圖3 DTS轉(zhuǎn)換包結(jié)構(gòu)圖

        3 檢測線DTS轉(zhuǎn)換包的運行

        當(dāng)DTS包被執(zhí)行時,會連接至正確的數(shù)據(jù)源、復(fù)制數(shù)據(jù)、轉(zhuǎn)換數(shù)據(jù)和處理某些事務(wù)。包的執(zhí)行方式有多種:在Enterprise Manager中執(zhí)行;使用命令行工具dtsrun執(zhí)行;使用圖形界面工具dtsrunui執(zhí)行;在前端應(yīng)用程序調(diào)用DTS包對象的Execute方法執(zhí)行等。為了能使DTS包在脫離SQL Server軟件環(huán)境下獨立運行,并且始終運行最新版本的DTS包,提高轉(zhuǎn)換效率,本文選擇了在前端Visual Basic.net程序調(diào)用DTS包對象的Execute方法。該方法使用簡單、靈活,而且可以轉(zhuǎn)換大部分?jǐn)?shù)據(jù)庫數(shù)據(jù)源、文本文件等異構(gòu)數(shù)據(jù)源,適用范圍較廣。

        在DTS設(shè)計器中設(shè)計了轉(zhuǎn)換包后,為了方便復(fù)制、遷移和傳送DTS包,將其存儲為一個結(jié)構(gòu)化存儲文件,文件完整的磁盤路徑設(shè)為X:…VIT.dts。

        4 結(jié)束語

        基于DTS的汽車檢測線異構(gòu)數(shù)據(jù)源轉(zhuǎn)換研究,實現(xiàn)了汽車檢測線Access數(shù)據(jù)源到SQL Server數(shù)據(jù)源的轉(zhuǎn)換,能夠統(tǒng)一規(guī)范各檢測站汽車檢測數(shù)據(jù)庫,便于汽車檢測數(shù)據(jù)的匯總、統(tǒng)計和分析決策。

        由于DTS可以通過圖形化的DTS設(shè)計器和導(dǎo)入導(dǎo)出向?qū)Ы换ナ绞褂?,操作簡單方便,可移植性強[12],更容易被一線檢測人員接受和掌握,具有相當(dāng)?shù)膶嵱眯浴?/p>

        [1] 夏均忠.汽車檢測技術(shù)與設(shè)備[M].北京:機(jī)械工業(yè)出版社,2009.

        [2]陳建平,張會章.汽車安全檢測系統(tǒng)的設(shè)計與實現(xiàn)[J].微計算機(jī)信息,2006,22(122):229-231.

        [3] 趙祥模,馬建,關(guān)可,等.汽車綜合性能分布式計算機(jī)網(wǎng)絡(luò)自動測控系統(tǒng)[J].長安大學(xué)學(xué)報:自然科學(xué)版,2003(5):94-98.

        [4] 王俊偉,史創(chuàng)明.SQL Server2000中文版數(shù)據(jù)庫管理與應(yīng)用標(biāo)準(zhǔn)教程[M].北京:清華大學(xué)出版社,2006:380-399.

        [5] Rankins R,Garbus J R,Solomon D,et al.Sybase SQL Server 11 UN-LEASHED[M].The United States:Sams Publishing,1996.

        [6] 高建強,李偉,秦克明.異構(gòu)數(shù)據(jù)源間數(shù)據(jù)轉(zhuǎn)換技術(shù)的研究與實現(xiàn)[J].計算機(jī)工程,2005,31(18):93-95.

        [7] 周永鋒,鄧蘇,楊強,等.基于DTS對象模型的DTS包實現(xiàn)[J].計算機(jī)應(yīng)用,2002,22(11):112-113.

        [8] 李學(xué)榮,李莎.基于元數(shù)據(jù)的異構(gòu)數(shù)據(jù)源集成系統(tǒng)設(shè)計與實現(xiàn)[J].計算機(jī)應(yīng)用,2005(25):209-210.

        [9] 馬廣慧,邵秀麗,李耀芳.基于XML的異構(gòu)數(shù)據(jù)源間數(shù)據(jù)交換的實現(xiàn)[J].天津師范大學(xué)學(xué)報:自然科學(xué)版,2008,28(1):76-80.

        [10]Collins S R,Navathe S,Mark L.XML schema mappings for heterogeneous database access[J].Information and Software Technology,2002,44(4):251-257.

        [11]何繪宇.構(gòu)件式遠(yuǎn)程校準(zhǔn)系統(tǒng)設(shè)計與應(yīng)用[J].中國測試,2009,35(4):126-128.

        [12]王勝德,楊學(xué)強.利用DTS實現(xiàn)異構(gòu)數(shù)據(jù)庫的數(shù)據(jù)交換[J].計算機(jī)應(yīng)用,2003,23(7):132-134.

        猜你喜歡
        數(shù)據(jù)庫汽車檢測
        “不等式”檢測題
        “一元一次不等式”檢測題
        “一元一次不等式組”檢測題
        汽車的“出賣”
        數(shù)據(jù)庫
        財經(jīng)(2017年2期)2017-03-10 14:35:35
        數(shù)據(jù)庫
        財經(jīng)(2016年15期)2016-06-03 07:38:02
        小波變換在PCB缺陷檢測中的應(yīng)用
        汽車們的喜怒哀樂
        數(shù)據(jù)庫
        財經(jīng)(2016年3期)2016-03-07 07:44:46
        數(shù)據(jù)庫
        財經(jīng)(2016年6期)2016-02-24 07:41:51
        久久久亚洲精品免费视频| 狠狠噜天天噜日日噜视频麻豆| 亚洲一区二区国产激情| 国产亚洲av无码av男人的天堂| 一二区成人影院电影网| 黄网站欧美内射| 国产欧美精品一区二区三区–老狼 | 美女不带套日出白浆免费视频 | 成人a级视频在线播放| 俺来也俺去啦最新在线| 97在线视频免费| 成a人片亚洲日本久久| 亚洲日本人妻少妇中文字幕| 日本熟日本熟妇中文在线观看| 又黄又爽的成人免费视频 | 亚洲综合天堂一二三区| 精品少妇一区二区av免费观看| 午夜视频在线在免费| 五月激情婷婷丁香| 国产成年女人特黄特色毛片免| 国产乱人伦偷精品视频还看的| 成人麻豆日韩在无码视频| 东京热人妻一区二区三区| 五月天丁香久久| 久久久久久一本大道无码| 无人视频在线播放免费| 影音先锋男人av鲁色资源网| 久久久久99精品成人片试看| 禁止免费无码网站| 亚洲精品一区二区三区在线观| 欧美日韩精品一区二区视频| 亚洲不卡av不卡一区二区| 亚洲综合久久一本久道| 自拍偷拍韩国三级视频| 夜夜躁狠狠躁日日躁视频| 国产欧美一区二区精品性色| 国产高清一区在线观看| 久久天堂精品一区二区三区四区| 中文成人无码精品久久久不卡 | 亚洲国产日韩精品一区二区三区| 亚洲av无码乱码国产精品fc2|