侯艷紅
?
基于數據庫管理的數據采集系統的設計及實現分析
侯艷紅
摘 要:為了使監控系統配置更加方便,降低系統的開發成本,提升資源的重復利用率,本文提出了在LabVIEW開發環境下運用LabSQL工具包實現對數據庫數據采集的系統。首先介紹了LabSQL的基本概念,然后分析了對Access數據庫進行訪問的實際應用,最后證明了該系統能夠有效的對玉米生態環境數據庫信息進行采集、查詢和分析。
關鍵詞:數據采集系統;數據庫管理;LabVIEW;LabSQL
LabVIEW本身是無法對數據庫進行直接訪問的,想要實現對數據庫的訪問就要附加工具包,而應用LabSQL工具包能夠有效實現對多種數據庫的訪問,并且該工具包是免費的,使系統的開發成本得到了有效的降低。因此本文就基于LabVIEW開發環境下利用LabSQL工具包對數據庫訪問系統的設計和實現進行了研究。
LabSQL是一個跨平臺的、多數據庫的、免費的LabVIEW數據庫訪問工具包,支持Windo操作系統中所有基于ODBC的數據庫,包括Oracle、SQL server以及Access等等。LabSQL的優勢在于操作簡單,易于理解,對SQL語言不熟悉的用戶也能夠很容易地使用,僅僅通過簡單的編程,就能夠實現在 LabVIEW 中對數據庫進行訪問。除此之外,LabSQL還有一個最大的優點是源代碼開放,并且是完全免費的,通過 LabSQL幾乎能夠對任何類型的數據庫進行訪問,執行各種SQL查詢。
2.1 創建數據源
在利用LabSQL之前,首先在ODBC數據源中創建一個DSN,然后LabSQL和Access數據庫之間的連接建立在DSN之上。本文所創建的數據源名DSN=myDB。
2.2 數據庫的整體流程設計
整個數據庫系統流程圖如圖1所示:

圖1 整個數據庫系統的流程示意圖
Step1:構建一個事件結構,具有兩個執行鼠標點擊事件的子圖形代碼框。
Step2:在第一個子圖形代碼框中建立順序結構,該順序結構在包含兩個子圖形代碼框,在第1個子圖形代碼框中進行編程完成對數據記錄的復合索引。
Step3:在順序結構的第二個子圖形代碼框中進行編程實現對數據庫的所有記錄進行查詢,以及按漂角值查詢。
Step4:在事件結構的第二個子圖形代碼框中也建立順序結構,并且該順序結構也包含兩個子圖形代碼框,在第一個子圖形代碼框中編程實現對舊錄入數據記錄的覆蓋。
Step5:在順序結構的第二個子圖形代碼框中進行編程實現對新數據記錄的錄入。
Step6:將一個while循環添加在整個事件結構的外部,并且該循環通過“退出”按鈕進行控制。
2.3 軟件設計
2.3.1 界面設計
利用 LabVIEW能夠簡便的設計出直觀、生動的用戶界面,本文查詢結果數據的顯示選取的是一個 Table控件,雖然該控件所采用的表現形式是一個字符串二維數組,該控件的每個單元格顯示一個字符串,但是它能夠很好對數據庫中的其他數據類型進行顯示,比如說單精度型、整型等類型。應用 Boolean控件將查詢方式設置查詢所有數據和按漂角查詢兩種查詢方式,應用了一個Array控件用于數據錄入。
2.3.2 數據庫排序程序設計
數據庫排序程序的具體步驟:
Step1:利用節點 ADO connection Open.vi和ADO connection Create.vi和數據庫之間建立起連接,數據庫由Connection String“DSN =myDB”指定。
Step2:利用節點ADO connection Execute. Vi執行SQL查詢命令;
2.3.3 數據庫錄入程序的設計
由于在數據進行錄入之前,我們并不不知道數據庫中是否存在這樣的數據記錄。故而無論這樣的數據記錄存在與否,首先要通過“數據記錄刪除程序”將這樣的數據記錄從數據庫中刪除,再利用“數據記錄添加程序”將新的數據記錄錄入到數據庫中,然后再通過順序結構對這兩個程序進行整合,這樣就實現了新數據記錄對數據庫中這樣的數據記錄的自動覆蓋。
(1)數據庫數據添加程序如圖2所示:

圖2 數據庫記錄添加程序
具體操作步驟如下:
Step1:利用節點ADO connection Open.vi和 ADO connection Create.vi和數據庫之間建立起連接,數據庫由Connection String“DSN =myDB”指定。
Step2:利用節點 ADOconnection Execute.vi執行SOL添加記錄命令,通過對所錄入的數組進行索引,得到8個數據并轉換成字符串,然后與得到需要的SOL命令進行有機的結合實現添加記錄。
Step3:利用節點ADO connection Close. Vi關閉和數據庫之間的連接。
(2)數據庫記錄刪除程序的具體操作步驟如下:
Step1:利用節點ADO connection Open.vi和 ADO connection Create.vi和數據庫之間建立起連接,數據庫由Connection String“DSN =myDB”指定。
“哇,還是食堂的飯菜好吃啊,不僅美味還實惠!”在武漢工程大學學生二食堂里,時常會聽到學生們發出這樣由衷的感嘆。該校餐飲處相關負責人表示,學生二食堂等餐飲中心具有極強的“吸引力”,除了深受在校師生們的喜愛,還深得周邊居民、光谷商圈等消費者們的青睞,常常有人慕名來到這里享受低價格高品質的服務。
Step2:利用節點 ADO connection Execute.vi執行SOL刪除記錄命令,通過對所錄入的數組進行索引,得到8個數據并轉換成字符串,從而實現對所需數據記錄的刪除。
Step3:利用節點ADO connection Close. Vi關閉和數據庫之間的連接。
2.3.4 數據庫查詢程序設計
數據庫查詢程序的具體操作步驟如下:
Step1:利用節點ADO connection Open.vi和 ADO connection Create.vi和數據庫之間建立起連接,數據庫由Connection String“DSN =myDB”指定。
Step2:利用節點 ADO Recordset Open.vi和 ADO Recordset Create.vi和記錄集之間建立起連接,并通過case結構來設置一個SQL查詢命令,從而保證兩種查詢方式的實現。
Step3:利用節點SQL Fetch Data.vi獲得查詢結果。
Step4:利用節點 ADO Recordset Close.vi和 ADO connection Close.vi將和數據庫之間的連接進行關閉。
數據庫查詢和排序程序,如圖3所示:

圖3 數據庫查詢和排序程序
本文選取了基于 LabVIEW 設計的玉米生態環境檢測系統的查詢功能為研究對象,并且該系統運用了Access數據庫,具體操作步驟如下:
Step4:創建LabSQL數據源;
Step2:運用ADO connection Open.vi和ADO connection Create.vi與數據庫之間建立起連接;
Step3:在程序框中編寫對簡單的結構化查詢語言進行編寫,并運用ADO Connection Execute.vi執行命令;
Step4:利用ADO Connection.vi關閉連接對象,同時利用ADO Connection Destroy.vi刪除連接對象。
通過運用LabVIEW中免費的工具包LabSQL,有效的實現了對玉米檢測系統數據庫的查詢、排序也錄入等功能,實例證明了該系統的簡單實用性,能夠很好的實現對不多數的數據庫訪問功能。
參考文獻
[1] 李文濤,曹彥紅,卜旭芳,等.LabVIEW數據庫訪問技術的實現及應用[J].工礦自動化,2012(3):69-72.
[2] 黃豪彩,楊燦軍,陳道華,等.基于 LabVIEW 的深海氣密采水器測控系統[J].儀器儀表學報,2011,32(1):40-45.
[3] 任浩然,苗洪利,田慶震.基于 LabVIEW 的太陽能電池測試系統[J].微計算機信息,2012,28(4):181-183.
[4] 羅秋鳳,肖前貴,楊柳慶.無人機自動檢測系統的設計與實現[J].儀器儀表學報,2011,32(1):126-131.
[5] 趙奇峰,閔濤,楊黔龍,等.基于 LabVIEW 串口數據采集系統設計[J].計算機技術與發展,2011,21(11)224-226.
[6] 杜芳.基于LabVIEW的 PXI虛擬數字示波器設計[D].哈爾濱:哈爾濱:哈爾濱工業大學,2010.
[7] 劉珊珊,劉雙峰.基于LabVIEW的電容加速度計測試軟件設計[J].電子測試,2011.9:77-80.
[8] 劉珊珊,劉雙峰.基于PCI數據采集卡的虛擬采集系統設計[J].傳感器世界,2011.10:25-29.
[9] 李連玉,楊琛,余玉,毛照中.基于 LabVIEW 的數據庫訪問技術在電力參數管理中的應用[J].科技創新導報,2012(35).
中圖分類號:TP183
文獻標志碼:A
文章編號:1007-757X(2016)07-0078-03
收稿日期:(2016.01.20)
作者簡介:侯艷紅(1979-),女,陜西渭南人,陜西國防工業職業技術學院,講師,研究方向:電子科學技術理論及應用,西安,710300
Design and Implementation Analysis of Database Management System Based on Data Acquisition
Hou Yanhong
(Shaanxi Defence Vocational and Technical College, Xi’An 710300, China)
Abstract:In order to make it easier to monitor the system configuration, reduce system development costs and enhance the reuse of resources, this paper proposes to use LabSQL toolkit to realize the database data collection systems in the LabVIEW development environment. First, introduce the basic concept LabSQL, and then analyze the practical application of the Access database access, and finally it proves that the system can effectively do the collection, query and analysis to the information of the maize ecological database.
Key words:Data Acquisition Systems; Database Management; LabVIEW; LabSQL