- 相關(guān)推薦
基于LabVIEW SQL Toolkit的數(shù)據(jù)庫訪問技術(shù)研究
【摘 要】大數(shù)據(jù)時代,以圖片、文字等非結(jié)構(gòu)化數(shù)據(jù)為主的大數(shù)據(jù)用傳統(tǒng)的存儲方式已不能滿足需要。本文對各種數(shù)據(jù)進(jìn)行有效分析,提出了一種利用LabVIEW SQL Toolkit快速實現(xiàn)與數(shù)據(jù)庫連接進(jìn)行相關(guān)操作的方法。以基于LabVIEW的失物招領(lǐng)平臺為例,實踐了該方法的具體應(yīng)用,為LabVIEW訪問數(shù)據(jù)庫的程序設(shè)計提供幫助。
【關(guān)鍵詞】LabVIEW;數(shù)據(jù)庫;LabVIEW;SQL;Toolkit;失物招領(lǐng)平臺
引言
隨著大數(shù)據(jù)時代的到來,以圖片、文字等非結(jié)構(gòu)化數(shù)據(jù)為主的大數(shù)據(jù),傳統(tǒng)的存儲方式已不能滿足需要,本文介紹了利用LabVIEW的LabVIEW SQL Toolkit工具包對數(shù)據(jù)庫的相關(guān)操作,幫助用戶集中管理大量信息。
1 LabVIEW SQL Toolkit簡介
LabVIEW SQL Toolkit[1-4](也叫Database Connectivity工具包)是NI為LabVIEW用戶提供的一個專門和數(shù)據(jù)庫連接的工具包,即能快速連接本地,又能連接遠(yuǎn)程數(shù)據(jù)庫,無需進(jìn)行結(jié)構(gòu)化查詢語言(SQL)編程就可以執(zhí)行諸多常用的數(shù)據(jù)庫操作,如Microsoft Access、SQL Server和Oracle,而SQL的使用增加了高級數(shù)據(jù)庫操作的靈活性。
2 數(shù)據(jù)庫操作
2.1 連接數(shù)據(jù)庫
連接數(shù)據(jù)庫之前要創(chuàng)建數(shù)據(jù)庫。創(chuàng)建一個“失物信息.accdb”的Microsoft Access 2007數(shù)據(jù)庫對象,然后通過DB Tools Open Connection.VI的connection information字符串指定數(shù)據(jù)源,提高數(shù)據(jù)庫操作的移植性和靈活性,即不需要手動設(shè)置數(shù)據(jù)源也可對數(shù)據(jù)庫中文件進(jìn)行操作,注意Provider應(yīng)為“Microsoft.ACE.OLEDB.12.0”。
2.2 數(shù)據(jù)存儲
通過DB Tools Insert Data.VI完成數(shù)據(jù)的存儲,在“table”端指定操作表的名稱,“create table”端若為“T”,表示在表不存在的情況下將自動創(chuàng)建新表。數(shù)據(jù)庫以簇的形式管理數(shù)據(jù),每個簇代表一個記錄,添加記錄時需調(diào)用捆綁.VI將獨(dú)立元素組合為簇進(jìn)行存儲。數(shù)據(jù)庫不但能存儲字符、數(shù)據(jù)、波形等類型的數(shù)據(jù),而且還能存儲圖片數(shù)據(jù)。利用讀取JPEG文件.VI、讀取PNG文件.VI等函數(shù)獲取圖片文件的圖像數(shù)據(jù),圖像數(shù)據(jù)為一個包含圖像類型、深度、掩碼、顏色等元素的組合簇。
2.3 數(shù)據(jù)的顯示
顯示數(shù)據(jù)庫中數(shù)據(jù)需先指定數(shù)據(jù)表,通過DB Tools Select Data.VI從指定的表中提取數(shù)據(jù),但是從表中提取的數(shù)據(jù)為變體,需使用Database Variant To Data Function.VI將變體轉(zhuǎn)化為通過“type”端所指定的數(shù)據(jù)類型,最后調(diào)用多列列表框的“ItemNames”屬性節(jié)點(diǎn),將數(shù)據(jù)表中的數(shù)據(jù)顯示在列表框中。而對于所存儲的圖片數(shù)據(jù),需使用繪制平滑像素圖.VI將圖像數(shù)據(jù)還原成圖片進(jìn)行顯示。
2.4 查詢記錄
LabVIEW SQL Toolkit與SQL兼容,可以不使用SQL語句就能實現(xiàn)數(shù)據(jù)庫記錄的查詢、添加、修改以及刪除等操作。直接調(diào)用DB Tools Select Data.VI,在“condition”需通過where函數(shù)搜索條件。DB Tools Execute Query.VI也可通過SQL語言對記錄進(jìn)行查詢,在“SQL query”輸入“select * from 表名”加 where條件,即可獲取指定表中滿足條件的記錄。
2.5 斷開連接
完成對數(shù)據(jù)庫訪問操作后,調(diào)用DB Tools Close Connection.VI斷開與數(shù)據(jù)庫的連接,釋放內(nèi)存和所占用的系統(tǒng)資源。
3 應(yīng)用案例
應(yīng)用該LabVIEW SQL Toolkit設(shè)計了基于LabVIEW的失物招領(lǐng)平臺,包括用戶登錄、用戶管理、修改密碼、登記和查看失物信息、郵件發(fā)送、查看照片六大功能。圖2為系統(tǒng)的招領(lǐng)信息子VI:(1)設(shè)置多列列表框每列的列名;(2)實現(xiàn)了時間實時更新;(3)在列表框中實現(xiàn)對記錄的選擇,實現(xiàn)刪除、發(fā)送郵件等功能;事件結(jié)構(gòu)的精確查詢分支,實現(xiàn)對數(shù)據(jù)庫中滿足條件的記錄的查詢及顯示。
為及時通知用戶,本系統(tǒng)采用SMTP(郵件傳輸協(xié)(下轉(zhuǎn)第89頁)(上接第74頁)議)郵件發(fā)送方式通知用戶。以鍵選中狀態(tài)的快速跳轉(zhuǎn)方法實現(xiàn)通過回車鍵實現(xiàn)文本框之間的跳轉(zhuǎn),其功能模塊如圖3所示。“用戶登錄”子VI運(yùn)行后,設(shè)置“用戶名”文本框的屬性節(jié)點(diǎn)KeyFocus為真,使其處于選中狀態(tài),用戶即可直接輸入用戶名,然后點(diǎn)擊回車鍵,鍵選中狀態(tài)跳轉(zhuǎn)到“密碼”文本框,方便了用戶操作。
4 結(jié)語
實例證明,在LabVIEW中,通過調(diào)用LabVIEW SQL Toolkit具有如下的優(yōu)點(diǎn):①數(shù)據(jù)庫的使用方便了對大量信息進(jìn)行集中管理;②不使用SQL語言也可對數(shù)據(jù)庫記錄進(jìn)行查詢、添加、修改、刪除等操作;③數(shù)據(jù)庫不但能存儲顯示字符、數(shù)字,還可以對波形和圖片進(jìn)行存儲顯示,拓寬了數(shù)據(jù)庫作用范圍。實例的郵件發(fā)送和快捷跳轉(zhuǎn)功能為操作人員帶來了方便,具有較強(qiáng)的實用性。
【參考文獻(xiàn)】
[1]錢思思,朱永生,等.利用LabVIEW SQL Toolkit對不同類型數(shù)據(jù)存取操作的方法研究[J].測控技術(shù),2014,33(9):105-109..
[2]唐亞鵬,候媛彬.基于LabVIEW的實踐教學(xué)平臺與Access數(shù)據(jù)庫的開發(fā)[J].計算機(jī)技術(shù)與發(fā)展,2011,21(5):219-222.
[3]冉寶春,郭慶吉.應(yīng)用LabSQL構(gòu)建和訪問數(shù)據(jù)庫的方法[J].2005(6):48-50.
[4]張捍東,紀(jì)文志.數(shù)據(jù)采集系統(tǒng)中的LabVIEW數(shù)據(jù)庫訪問技術(shù)[J].工業(yè)儀表與自動化裝置,2009(4):63-66.
【基于LabVIEW SQL Toolkit的數(shù)據(jù)庫訪問技術(shù)研究】相關(guān)文章:
應(yīng)用LabSQL實現(xiàn)LabVIEW中數(shù)據(jù)庫的訪問09-02
基于Web數(shù)據(jù)庫的信息發(fā)布系統(tǒng)JSP+SQL08-10
開發(fā)基于SQL SERVER 的C/S數(shù)據(jù)庫應(yīng)用系統(tǒng)?07-20
基于LabVIEW的GMSK調(diào)制與解調(diào)實現(xiàn)08-17
基于LabVIEW的自動生成Excel報告功能開發(fā)05-31
VB訪問數(shù)據(jù)庫的方法及接口的比較07-06
基于XML的作業(yè)答疑系統(tǒng)XML+SQL08-31