詳解基于Labwindows/CVI的測(cè)試系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
數(shù)據(jù)庫實(shí)際上就是存儲(chǔ)數(shù)據(jù)的“倉庫”。但數(shù)據(jù)不是存放在容器或空間中,而是存放在計(jì)算機(jī)的外存儲(chǔ)器上(如磁盤),并且是有組織的存放。數(shù)據(jù)的管理和利用通常是通過計(jì)算機(jī)的數(shù)據(jù)管理軟件——數(shù)據(jù)庫管理系統(tǒng)來完成的。因此,數(shù)據(jù)庫不單是指存有數(shù)據(jù)的計(jì)算機(jī)外存,而是指存放在外存上的數(shù)據(jù)集合及其管理軟件的總和,通常稱為數(shù)據(jù)庫系統(tǒng)。
LabWindows/CVI是一種C語言開發(fā)系統(tǒng)。與其它開發(fā)系統(tǒng)相比,CVI增添了一個(gè)交互式程序開發(fā)環(huán)境、數(shù)據(jù)采集函數(shù)庫、儀器控制工具等工具。同時(shí),LabWindows/CVI包含一整套用來進(jìn)行數(shù)據(jù)采集、分析、顯示等處理的軟件工具??梢岳肅VI的交互式環(huán)境編寫調(diào)試ANSI C語言(美國(guó)國(guó)家標(biāo)準(zhǔn)C語言),還可以使用LabWindows/CVI自帶的庫函數(shù)以及調(diào)用其它的C語言模塊、動(dòng)態(tài)鏈接庫函數(shù)、C語言庫函數(shù)、儀器驅(qū)動(dòng)程序等。CVI最大的優(yōu)勢(shì)在于具有功能強(qiáng)的的函數(shù)庫。它的函數(shù)庫包含了對(duì)數(shù)據(jù)處理的每一過程及儀器進(jìn)行控制的各種函數(shù)。
一般情況下,數(shù)據(jù)庫都有強(qiáng)大的數(shù)據(jù)存儲(chǔ)和管理能力以及實(shí)際的功能需求,因此,我們?cè)诤芏鄶?shù)據(jù)處理中都要應(yīng)用數(shù)據(jù)庫技術(shù)。本文采用的LabWindows/CVI SQL工具包符合ODBC標(biāo)準(zhǔn),可作為驅(qū)動(dòng),并配合Microsoft Access2000作為數(shù)據(jù)庫進(jìn)行配置,可以很好地實(shí)現(xiàn)數(shù)據(jù)庫技術(shù)在一般測(cè)試系統(tǒng)中的應(yīng)用,從而極大提高測(cè)試系統(tǒng)數(shù)據(jù)的管理效率。
1 SQL簡(jiǎn)介
SQL是STructure Query Language的縮寫,意思為結(jié)構(gòu)化查詢語言。利用SQL可實(shí)現(xiàn)對(duì)數(shù)據(jù)庫的各種交互操作。根據(jù)美國(guó)國(guó)家標(biāo)準(zhǔn)研究所ANSI( American National Standards InsTItute)的聲明,SQL是關(guān)系型數(shù)據(jù)庫管理系統(tǒng)的標(biāo)準(zhǔn)語言。利用相應(yīng)的SQL語句可實(shí)現(xiàn)數(shù)據(jù)庫的數(shù)據(jù)更新、數(shù)據(jù)獲取等功能。
2 測(cè)試系統(tǒng)數(shù)據(jù)庫的配置
在測(cè)試系統(tǒng)中,數(shù)據(jù)庫中的數(shù)據(jù)表主要由幾大塊組成。測(cè)試參數(shù)數(shù)據(jù)的存儲(chǔ)與處理,這一塊是本測(cè)試系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)的核心,包括實(shí)際測(cè)試結(jié)果數(shù)據(jù)的存儲(chǔ)。為了存儲(chǔ)的方便,應(yīng)當(dāng)精心設(shè)計(jì)各個(gè)用戶參數(shù)、測(cè)試項(xiàng)判據(jù)和測(cè)試結(jié)果的數(shù)據(jù)邏輯設(shè)計(jì)結(jié)構(gòu)如圖1所示。
本文所用的數(shù)據(jù)庫的配置有以下幾個(gè)步驟:
(1)數(shù)據(jù)庫系統(tǒng)的注冊(cè)及數(shù)據(jù)源添加
開放數(shù)據(jù)庫互連(ODBC)標(biāo)準(zhǔn)取決于訪問每個(gè)數(shù)據(jù)庫系統(tǒng)的ODBC驅(qū)動(dòng)器,配置時(shí)必須對(duì)任何使用的ODBC驅(qū)動(dòng)器進(jìn)行注冊(cè)。以便在win-dows2000系統(tǒng)的控制面板上的ODBC選項(xiàng)里進(jìn)行配置和添加。
(2)數(shù)據(jù)庫連接
執(zhí)行SQL語句前,必須建立數(shù)據(jù)庫連接。這一步以SQL Toolkit為中介,可以用程序方式來實(shí)現(xiàn)連接。
(3)激活SQL連接
事實(shí)上,激活SQL連接是進(jìn)行查詢會(huì)話的前提,可以采用自動(dòng)SQL或顯式SQL兩種方式來實(shí)現(xiàn)SQL旌接的激活。
(4)處理SQL語句
這是操作數(shù)據(jù)庫的關(guān)鍵。主要是對(duì)數(shù)據(jù)庫創(chuàng)建記錄、獲取記錄、更新記錄、刪除記錄等。通過使用SELECT語句可將數(shù)據(jù)表中的字段綁定到程序中的變量上,接著用取值函數(shù)獲取所選記錄。
(5)斷開SQL璉接
SQL操作結(jié)束后,應(yīng)斷開SQL連接,這一步驟在任何方向上取值時(shí)都是特別重要的,它可以保證關(guān)閉連接并刪除建立連接時(shí)所生成的臨時(shí)登記文件。
(6)斷開數(shù)據(jù)庫
全部數(shù)據(jù)庫操作結(jié)束后,應(yīng)確保斷開通過SQL建立的數(shù)據(jù)庫連接已被其他地方不小心修改,同時(shí)也可用來釋放系統(tǒng)資源。
3 測(cè)試系統(tǒng)數(shù)據(jù)的代碼設(shè)計(jì)
現(xiàn)以本測(cè)試系統(tǒng)中的用戶管理數(shù)據(jù)的獲取為例,詳細(xì)介紹本系統(tǒng)數(shù)據(jù)庫的設(shè)計(jì)方法,其部分配置代碼如下:
//激活SQL連接
hstmt=DBActivateMap(hmap,"Pass-Word");
//操作SQL并使得當(dāng)前各字段分別映射到各相關(guān)變量
resCode=DBFetchRandom(hstmt,userid2+1);
//其他操作
//斷開SQL連接
resCode=DBDeactivateMap Oamap);
//斷開數(shù)據(jù)庫
resCode=DBDiscONnect(hdbc);
本文介紹了基于Labwindows的測(cè)試系統(tǒng)軟件數(shù)據(jù)庫的設(shè)計(jì)和配置方法。目前,這部分技術(shù)已經(jīng)相當(dāng)成熟,將其運(yùn)用到虛擬儀器系統(tǒng)中,可以更好的管理系統(tǒng)數(shù)據(jù),提高系統(tǒng)效率。