• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      LabVIEW中訪問數(shù)據(jù)庫幾種不同方法的探討

      2011-10-26 03:27:58徐小華賀斌
      中國科技信息 2011年7期
      關(guān)鍵詞:程序框圖虛擬儀器數(shù)據(jù)源

      徐小華 賀斌

      昭通師范高等??茖W(xué)校

      LabVIEW中訪問數(shù)據(jù)庫幾種不同方法的探討

      徐小華 賀斌

      昭通師范高等專科學(xué)校

      本文介紹并比較了LabVIEW中訪問數(shù)據(jù)庫的幾種方法,并重點討論了應(yīng)用ActiveX功能、LabSQL訪問數(shù)據(jù)庫的方法。把數(shù)據(jù)庫技術(shù)應(yīng)用于虛擬儀器中充分發(fā)揮了數(shù)據(jù)庫的管理優(yōu)勢,擴(kuò)展了虛擬儀器的功能。

      LabVIEW;LabSQL;數(shù)據(jù)庫

      引言

      LabVIEW(Laboratory Virtual Instrument Engineering Workbench是目前應(yīng)用最廣泛的虛擬儀器開發(fā)環(huán)境之一,它具有工業(yè)標(biāo)準(zhǔn)的圖形化編程工具,主要用于開發(fā)測試、測量和控制系統(tǒng)。但在使用LabVIEW編寫應(yīng)用系統(tǒng)時,在很多場合需要對大量的數(shù)據(jù)進(jìn)行處理,這時需使用數(shù)據(jù)庫實現(xiàn)對需要的數(shù)據(jù)進(jìn)行處理。但是LabVIEW身并不具備數(shù)據(jù)庫訪問功能,不能像VB、VC++、Delphi非常方便地進(jìn)行數(shù)據(jù)庫程序的開發(fā),因此在LabVIEW開發(fā)中需解決與數(shù)據(jù)庫之間的互訪和管理問題。

      1 LabVIEW中訪問數(shù)據(jù)庫方式

      LabVIEW中訪問數(shù)據(jù)庫方式有以下幾種方法:(1)利用中間文件存取數(shù)據(jù);(2) 利用NI公司的附加工具包LabVIEW SQL Toolkit實現(xiàn)對數(shù)據(jù)庫的訪問;(3) 利用其他語言編寫動態(tài)鏈接庫DLL(Dynamic Link Library),再利用LabVIEW的調(diào)用庫函數(shù)節(jié)點CLFN(Calling Library Function Node)調(diào)用此DLL間接實現(xiàn)對數(shù)據(jù)庫的訪問;(4) 利用LabVIEW的ActiveX功能;(5) 通過第三方開發(fā)的免費工具包LabSQL訪問。

      第一種方法先將數(shù)據(jù)存入文件之中,在一定時刻或者是需要的時候在用第三方程序?qū)?shù)據(jù)導(dǎo)入到數(shù)據(jù)庫之中。這種方法用戶操作需分成兩個部分,磁盤文件作為中介,實時性不高,不方便使用。第二種方法NI公司的附加工具包需要另外購買且價格昂貴,它集成了一系列的高級功能模塊,這些模塊封裝了大多數(shù)的數(shù)據(jù)庫操作和一些高級的數(shù)據(jù)庫訪問功能。它的優(yōu)點是易于理解,操作簡單,缺點是增加系統(tǒng)成本。第三種方法需要從底層進(jìn)行復(fù)雜的編程才能實現(xiàn),對非專業(yè)編程人員來講是不現(xiàn)實的。第四種方法需調(diào)用Microsoft ADO對象,利用SQL語言實現(xiàn)數(shù)據(jù)庫的訪問。使用這種方法需要用戶對Microsoft ADO以及SQL語言有較深的了解。第五種方法是LabSQL將復(fù)雜的底層ADO及SQL操作封裝成一系列的LabSQL VIs,它幾乎可以訪問任何類型的數(shù)據(jù)庫。它的優(yōu)點是易于理解,操作簡單,不熟悉SQL 語言的用戶也可以很容易地使用,只需簡單的編程就可在LabVIEW中實現(xiàn)數(shù)據(jù)庫訪問。目前后兩種方法使用比較廣泛,下面將討論這兩種方法。

      2 LabVIEW 8.2中文版ADO編程

      在使用ADO編程時,首先需建立ADO對象在程序框圖面板中,選擇函數(shù)模板的“互連接口”的子模板中選擇“ActiveX”項,再選擇“打開自動化”控件并把它拖放到程序程序框圖面板上,在右擊菜單中點擊“選擇ActiveX 類”,在選擇瀏覽…,彈出“選擇ActiveX 類”對話框,在類型庫Type Library下拉列表中選擇“Microsoft ActiveX Data Objects 2.7 Library Version 2.7”,在下面的對象Objects列表欄中出現(xiàn)這個庫對LabVIEW可用的對象。如圖1所示。Connection對象用來連接和數(shù)據(jù)庫連接建立,Recordset對象用來處理記錄集。在利用“調(diào)用節(jié)點”控件來設(shè)置連接到數(shù)據(jù)源、生成SQL命令、關(guān)閉連接等相關(guān)操作的對象。

      圖1 選擇ADO對象并引入程序

      3 利用LabSQL實現(xiàn)對數(shù)據(jù)庫添加數(shù)據(jù)

      3.1 LabSQL簡介

      LabSQL VIs 按照功能可分為四類:Command VIs、Connection VIs、Recordset VIs、Top Level VIs。Command VIs 的功能是完成一系列的基本ADO 操作;Connection VIs的功能是管理LabVIEW與數(shù)據(jù)庫之間的連接;Recordset VIs用于對數(shù)據(jù)庫中的記錄進(jìn)行各種操作;TopLevel VIs屬于頂層的LabSQL 應(yīng)用,對前三類LabSQL VIs 某些功能的封裝。例如,SQL Execute.vi可用于直接執(zhí)行命令。

      3.2 應(yīng)用實例

      本實例是實現(xiàn)數(shù)據(jù)庫查詢的方法。實現(xiàn)數(shù)據(jù)庫查詢共有兩種方法,一是利用Recordset VIs實現(xiàn),二是用Connection VIs實現(xiàn),實例采用第一種方法來實現(xiàn)。使用LabSQL前,需要在Windows操作系統(tǒng)中的ODBC(Open Data Base Connectivity)數(shù)據(jù)源中創(chuàng)建一個DSN(Data Source Name,數(shù)據(jù)源名),本實例的數(shù)據(jù)源是DSN,數(shù)據(jù)表是測試。LabSQL與數(shù)據(jù)庫之間的連接就是建立在DSN基礎(chǔ)之上。具體步驟如下,第一步:使用ADO Connection Create. vi創(chuàng)建一個Connetction對象,然后使用ADO Connection Open.vi打開名為測試數(shù)據(jù)記錄的數(shù)據(jù)源,與數(shù)據(jù)庫文件建立連接。第二步:使用ADO Recordset Create. vi創(chuàng)建一個數(shù)據(jù)記錄對象,然后使用ADO Recordset open.vi打開一個記錄對象,使用SQL命令“SELECT*FROM 測試 where”結(jié)合檢索內(nèi)容實現(xiàn)數(shù)據(jù)庫數(shù)據(jù)檢索。第三步:使用ADO SQL Fetch.vi把用戶條件檢索的結(jié)果以表格的形式顯示出來。第四步:使用ADO Recordset Close.vi和ADO Connection Close.vi斷開與數(shù)據(jù)庫的連接,完成按條件查詢功能。如圖2是數(shù)據(jù)庫查詢程序框圖和圖3是數(shù)據(jù)庫查詢前面板。

      圖2 數(shù)據(jù)查詢程序框圖

      圖3 數(shù)據(jù)查詢前面板圖

      4 結(jié)論

      綜上所述,使用LabVIEW訪問數(shù)據(jù)庫的基本步驟都是相同的,都要經(jīng)過連接數(shù)據(jù)庫、執(zhí)行操作、斷開連接這三個步驟。使用ADO主要優(yōu)點是易于使用,但需要用戶對Microsoft ADO以及SQL語言有較深的了解。使用LabSQL不用精通ActiveX技術(shù)和SQL語言,操作簡介,容易理解,但它對ADO的所有功能未進(jìn)行完全封裝,功能上有局限性。在實際應(yīng)用中,用戶究竟采用哪種方法要從項目難易程度、自身編程水平和技術(shù)經(jīng)濟(jì)等方面綜合考慮。

      [1]劉君華.基于LabView的虛擬儀器設(shè)計.電子工業(yè)出版社[M].2003

      [2]NI Corp.LabView User Manual [M].USA.1998

      [3]楊樂平,李海濤,趙勇,楊磊.LabVIEW高級程序設(shè)計.北京:清華大學(xué)出版社.2003.2

      [4]雷振.LabVIEW 7 Express實用技術(shù)教程.北京:中國鐵道出版社.2004. 250-251

      [5]戴鵬飛,王勝開,等.測試工程與LabVIEW 應(yīng)用.電子工業(yè)出版社[M].2006.5

      The paper analyzes several methods of accessing database with LabVIEW program. The methods of calling ActiveX and LabSQL under LabVIEW environment are fully discussed. The operation shows that the combination of database access technology and virtual instrument takes advantage of database in the side of data management and expands the functions of virtual inStrument.

      LabVIEW; LabSQL; Database;

      10.3969/j.issn.1001-8972.2011.07.067

      地址:云南省昭通市昭通師范高等??茖W(xué)校。

      猜你喜歡
      程序框圖虛擬儀器數(shù)據(jù)源
      “順勢而下”破解程序框圖
      中學(xué)生數(shù)理化·高一版(2019年1期)2019-06-26 12:45:36
      Web 大數(shù)據(jù)系統(tǒng)數(shù)據(jù)源選擇*
      程序框圖問題的精彩交匯
      PCB 刻制機(jī)功能開發(fā)及在虛擬儀器實驗室建設(shè)中的應(yīng)用
      電子制作(2017年13期)2017-12-15 09:00:26
      虛擬儀器及其在電工電子實驗中的應(yīng)用
      電子制作(2017年1期)2017-05-17 03:54:33
      基于不同網(wǎng)絡(luò)數(shù)據(jù)源的期刊評價研究
      虛擬儀器技術(shù)在農(nóng)業(yè)裝備測控中的應(yīng)用
      基于虛擬儀器的DMFC實時監(jiān)控系統(tǒng)
      基于真值發(fā)現(xiàn)的沖突數(shù)據(jù)源質(zhì)量評價算法
      安多县| 绥阳县| 睢宁县| 翁牛特旗| 靖边县| 茌平县| 南平市| 静乐县| 申扎县| 夏邑县| 安平县| 徐水县| 南岸区| 天祝| 比如县| 惠东县| 涟源市| 苏尼特左旗| 平塘县| 洪洞县| 凤阳县| 南郑县| 利辛县| 秦安县| 沁源县| 绥滨县| 鹤岗市| 南汇区| 金山区| 宿松县| 南乐县| 景德镇市| 满城县| 浦县| 麻栗坡县| 玉屏| 天祝| 宜兰县| 改则县| 金川县| 南华县|