<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 基于LabWindows/CVI的數(shù)據(jù)庫(kù)編程研究與分析

          基于LabWindows/CVI的數(shù)據(jù)庫(kù)編程研究與分析

          作者: 時(shí)間:2012-10-15 來源:網(wǎng)絡(luò) 收藏

          摘要:在復(fù)雜的大型測(cè)試系統(tǒng)的軟件開發(fā)中,面對(duì)大量數(shù)據(jù)的存儲(chǔ)、管理和處理。是測(cè)試系統(tǒng)中不可缺少的重要組成部分。開放式互聯(lián)(ODBC)規(guī)范提供的一組對(duì)訪問的標(biāo)準(zhǔn)API為數(shù)據(jù)庫(kù)的管理和應(yīng)用程序開發(fā)提供了強(qiáng)大的工具。基于此介紹了在/平臺(tái)下,應(yīng)用ODBC和SQLToolkit工具包與Oracle數(shù)據(jù)庫(kù)交互的過程和程序?qū)嵗?shí)踐證明,此方法簡(jiǎn)單、可靠,實(shí)際開發(fā)中可用性比較強(qiáng)。

          本文引用地址:http://www.ex-cimer.com/article/193070.htm

          在測(cè)試系統(tǒng)的應(yīng)用開發(fā)中,測(cè)試數(shù)據(jù)通常是以文件的方式進(jìn)行組織管理的。這樣的數(shù)據(jù)存儲(chǔ)方式有一定的局限性,特別是遠(yuǎn)程測(cè)試系統(tǒng),對(duì)于大量的數(shù)據(jù)不能及時(shí)的反饋。要實(shí)現(xiàn)方便靈活的管理和訪問,數(shù)據(jù)庫(kù)是一種必然的選擇。

          /是一個(gè)完全的標(biāo)準(zhǔn)C開發(fā)環(huán)境,用于開發(fā)虛擬儀器應(yīng)用系統(tǒng)。5.5及以后的版本提供了支持?jǐn)?shù)據(jù)庫(kù)的sQLTOOLKIT工具包,該工具包提供了豐富的數(shù)據(jù)庫(kù)操作函數(shù),給開發(fā)帶來了方便和快捷。

          1基于PCI的數(shù)據(jù)采集

          對(duì)于非NI公司的PCI數(shù)據(jù)采集卡,一般的驅(qū)動(dòng)程序都是以動(dòng)態(tài)鏈接庫(kù)的形式提供的。對(duì)于CVI而言,可以直接利用驅(qū)動(dòng)程序的動(dòng)態(tài)鏈接庫(kù)文件實(shí)現(xiàn)對(duì)采集卡的控制。本文采用中泰PCI-8333數(shù)據(jù)采集卡進(jìn)行信號(hào)采集、存儲(chǔ)和輸出。PCI-8333數(shù)據(jù)采集卡具備豐富的采集與控制方法,同時(shí)也提供了動(dòng)態(tài)鏈接庫(kù)文件和頭文件。

          1.1縮寫采集卡頭文件

          雖然廠商提供了頭文件,但是/CVI需要用c語言對(duì)頭文件進(jìn)行改寫,參照廠商提供的頭文件,編寫部分方法聲明如下:

          編寫部分方法聲明

          注意,頭文件中包含的方法一定要與動(dòng)態(tài)鏈接庫(kù)中的方法—致。編寫后,將該頭文件添加到應(yīng)用程序中。在程序源文件中聲明頭文件,添加#include“PCI8KP.h”。

          1.2產(chǎn)生dll導(dǎo)入庫(kù)文件

          將采集卡廠商提供的動(dòng)態(tài)鏈接庫(kù)文件加入剄應(yīng)用程序所在的文件夾中,選擇菜單:Option-GenerateDLLImportLibrary,在彈出的對(duì)話框中選擇OK按鈕,會(huì)彈出動(dòng)態(tài)鏈接庫(kù)選擇對(duì)話框,選擇加入到程序中的動(dòng)態(tài)鏈接庫(kù)后,會(huì)在該文件夾下產(chǎn)生導(dǎo)入庫(kù)。將該導(dǎo)入庫(kù)也加入到當(dāng)前程序的工程中。

          1.3應(yīng)用動(dòng)態(tài)鏈接庫(kù)

          上面的兩個(gè)步驟完成后,便可在CVI應(yīng)用程序中使用該動(dòng)態(tài)鏈接庫(kù),調(diào)用頭文件中已聲明的方法進(jìn)行數(shù)據(jù)采集源程序的編寫,實(shí)現(xiàn)對(duì)效據(jù)采集卡的控制。

          2ODBC及SQLToolkit工具包

          ODBC(OpenDatabaseConnectivity,開放數(shù)據(jù)庫(kù)互連)是Microsoft公司開發(fā)的一套開放數(shù)據(jù)庫(kù)系統(tǒng)應(yīng)用程序接口規(guī)范,它提供了統(tǒng)一的數(shù)據(jù)庫(kù)應(yīng)用接口(API),為應(yīng)用程序提供了一套高層調(diào)用接口規(guī)范和基于動(dòng)態(tài)連接庫(kù)的運(yùn)行支持環(huán)境。使用ODBC開發(fā)數(shù)據(jù)庫(kù)應(yīng)用時(shí),應(yīng)用程序調(diào)用的是標(biāo)準(zhǔn)的ODBC函數(shù)和SQL語句,數(shù)據(jù)庫(kù)底層操作由各個(gè)數(shù)據(jù)庫(kù)的驅(qū)動(dòng)程序完成。因此應(yīng)用程序有很好的適應(yīng)性和可移植性。

          LabWindows/CVISQLToolkit是用于CVI數(shù)據(jù)庫(kù)訪問的附加工具包,它集成了一系列的高級(jí)功能模塊,這些模塊封裝了大部分的數(shù)據(jù)庫(kù)操作和一些高級(jí)數(shù)據(jù)庫(kù)訪問功能。LabWindows/CVISQLToolkit支持主流的數(shù)據(jù)庫(kù)驅(qū)動(dòng),對(duì)于數(shù)據(jù)庫(kù)開發(fā)商及第三方開發(fā)者提供的驅(qū)動(dòng),LabWindows/CVISQLToolkit也一樣采用標(biāo)準(zhǔn)的ODBC編譯方式,通過這種擴(kuò)展方式,可以靈活支持任何符合ODBC開發(fā)標(biāo)準(zhǔn)的數(shù)據(jù)庫(kù)系統(tǒng)。

          高級(jí)功能模塊

          3數(shù)據(jù)庫(kù)操作

          Oracle數(shù)據(jù)庫(kù)管理系統(tǒng)是一個(gè)以關(guān)系型和面向?qū)ο鬄橹行墓芾頂?shù)據(jù)的數(shù)據(jù)庫(kù)管理軟件系統(tǒng)。Orade數(shù)據(jù)庫(kù)有如下幾個(gè)強(qiáng)大的特性:支持多用戶、大事務(wù)量的事務(wù)處理,數(shù)據(jù)安全性和完整性的有效控制,支持分布式數(shù)據(jù)處理等。因其在數(shù)據(jù)安全性與數(shù)據(jù)完整性控制方面的優(yōu)越性能,以及跨操作系統(tǒng)、跨硬件平臺(tái)的數(shù)據(jù)互操作能力,使得越來越多的用戶將Oracle作為其應(yīng)用數(shù)據(jù)的處理系統(tǒng)。

          3.1創(chuàng)建數(shù)據(jù)庫(kù)

          創(chuàng)建數(shù)據(jù)庫(kù)

          最后創(chuàng)建數(shù)據(jù)存儲(chǔ)DATA_ACQUIRE,這里不再列舉數(shù)據(jù)庫(kù)腳本代碼。

          3.2創(chuàng)建DSN

          在使用工具包之前,首先需要在操作系統(tǒng)中的ODBC數(shù)據(jù)源中創(chuàng)建一個(gè)DSN,工具包與數(shù)據(jù)庫(kù)的鏈接就是建立在DSN基礎(chǔ)上的。創(chuàng)建DSN的步驟如下:

          (1)在操作系統(tǒng)控制面板中選擇“數(shù)據(jù)源(ODBC)”。

          (2)選擇“系統(tǒng)DSN選項(xiàng)卡”添加按鈕。

          (3)在出現(xiàn)的“創(chuàng)建新數(shù)據(jù)源”對(duì)話框驅(qū)動(dòng)程序列表中選OracleinOraOb10g_homel”,點(diǎn)擊完成。

          (4)配置OracleODBCDriverConfiguration”,如圖2所示:

          創(chuàng)建DSN

          這樣就完成了DSN的創(chuàng)建,從此以后,工具包就可以利用這個(gè)DSN訪問與之相關(guān)聯(lián)的數(shù)據(jù)庫(kù)了。

          3.3采集數(shù)據(jù)插入數(shù)據(jù)庫(kù)

          采集數(shù)據(jù)插入數(shù)據(jù)庫(kù)

          采集數(shù)據(jù)插入數(shù)據(jù)庫(kù)

          3.4顯示結(jié)果

          檢索數(shù)據(jù)庫(kù)中所有的數(shù)據(jù),提取DATA字段,將數(shù)據(jù)組合成數(shù)組,通過Graph控件把數(shù)據(jù)顯示出來。也可以按照時(shí)間條件檢索數(shù)據(jù)庫(kù),Graph控件中將會(huì)顯示符合查詢條件的數(shù)據(jù)。

          顯示符合查詢條件的數(shù)據(jù)

          顯示符合查詢條件的數(shù)據(jù)

          4結(jié)論

          CVI和數(shù)據(jù)庫(kù)是開發(fā)虛擬儀器應(yīng)用軟件的不可缺少的組成部分,利用專門的數(shù)據(jù)庫(kù)接口工具包可以方便地實(shí)現(xiàn)CVI應(yīng)用程序與數(shù)據(jù)庫(kù)的鏈接。本系統(tǒng)的實(shí)現(xiàn)表明,通過CVI與Oracle數(shù)據(jù)庫(kù)質(zhì)檢進(jìn)行數(shù)據(jù)交互,使得測(cè)試系統(tǒng)有了強(qiáng)大的功能,在組建復(fù)雜的測(cè)試系統(tǒng)中具有廣泛的應(yīng)用價(jià)值。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();