公務(wù)員期刊網(wǎng) 論文中心 正文

施工企業(yè)成本數(shù)據(jù)庫(kù)建設(shè)研究

前言:想要寫(xiě)出一篇引人入勝的文章?我們特意為您整理了施工企業(yè)成本數(shù)據(jù)庫(kù)建設(shè)研究范文,希望能給你帶來(lái)靈感和參考,敬請(qǐng)閱讀。

施工企業(yè)成本數(shù)據(jù)庫(kù)建設(shè)研究

摘要:為了實(shí)現(xiàn)對(duì)功率傳感器自動(dòng)校準(zhǔn)系統(tǒng)中校準(zhǔn)數(shù)據(jù)的存儲(chǔ)、查詢等功能,設(shè)計(jì)并實(shí)現(xiàn)了一套嵌入在功率傳感器自動(dòng)校準(zhǔn)系統(tǒng)中的數(shù)據(jù)庫(kù)管理系統(tǒng)。本系統(tǒng)采用模塊化設(shè)計(jì)思想,具有占用系統(tǒng)資源少、運(yùn)行速度快等優(yōu)點(diǎn)。經(jīng)過(guò)測(cè)試,所設(shè)計(jì)的數(shù)據(jù)庫(kù)管理系統(tǒng)能夠滿足功率傳感器自動(dòng)校準(zhǔn)系統(tǒng)工作的需要。

關(guān)鍵詞:功率傳感器;自動(dòng)校準(zhǔn);數(shù)據(jù)庫(kù);Access;模糊查詢

引言

功率是無(wú)線電計(jì)量中的一個(gè)重要參數(shù),功率傳感器作為微波功率測(cè)量的主要設(shè)備,在射頻、微波信號(hào)測(cè)量中廣泛采用。我院基于現(xiàn)有測(cè)量設(shè)備,研發(fā)了一套功率傳感器自動(dòng)校準(zhǔn)系統(tǒng),實(shí)現(xiàn)功率傳感器的自動(dòng)校準(zhǔn)、數(shù)據(jù)存儲(chǔ)、生成證書(shū)。該校準(zhǔn)系統(tǒng)中的數(shù)據(jù)存儲(chǔ)功能使用MicrosoftAccess作為數(shù)據(jù)存儲(chǔ)的底層數(shù)據(jù)庫(kù),以VisualStudio2010為開(kāi)發(fā)平臺(tái),形成集數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)查詢等管理功能為一體的軟件系統(tǒng),[1]本文主要介紹校準(zhǔn)系統(tǒng)數(shù)據(jù)庫(kù)的設(shè)計(jì)與實(shí)現(xiàn)。

1數(shù)據(jù)庫(kù)的設(shè)計(jì)

1.1功率傳感器自動(dòng)校準(zhǔn)系統(tǒng)

功率傳感器自動(dòng)校準(zhǔn)系統(tǒng)通過(guò)GPIB總線控制信號(hào)發(fā)生器(SMF100A)、功率傳遞標(biāo)準(zhǔn)(NRPC18)和功率計(jì)(NRP2、N1911A等)等設(shè)備,實(shí)現(xiàn)對(duì)功率傳感器的自動(dòng)校準(zhǔn)。該系統(tǒng)具有自動(dòng)化測(cè)試、數(shù)據(jù)存儲(chǔ)、計(jì)算分析和生成記錄文件等功能。

1.2數(shù)據(jù)庫(kù)需求分析和功能設(shè)計(jì)

功率傳感器自動(dòng)校準(zhǔn)系統(tǒng)對(duì)數(shù)據(jù)庫(kù)的需求主要分為兩個(gè)方面:一是管理功率傳感器校準(zhǔn)信息和校準(zhǔn)數(shù)據(jù);二是管理功率傳感器的型號(hào)信息。功率傳感器校準(zhǔn)信息數(shù)據(jù)庫(kù),主要分為目錄表和數(shù)據(jù)表兩種表格。目錄表中每一條信息對(duì)應(yīng)一個(gè)數(shù)據(jù)表,包含所有被檢功率傳感器的送檢單位、型號(hào)、出廠編號(hào)、生產(chǎn)廠家等基本信息,以及校準(zhǔn)環(huán)境、校準(zhǔn)時(shí)間、校準(zhǔn)證書(shū)號(hào)等校準(zhǔn)信息,是進(jìn)行數(shù)據(jù)查詢的基礎(chǔ)。數(shù)據(jù)表以被檢儀器證書(shū)號(hào)命名,每一次校準(zhǔn)操作對(duì)應(yīng)一個(gè)數(shù)據(jù)表,主要用來(lái)保存校準(zhǔn)數(shù)據(jù)和和操作記錄。功率傳感器的型號(hào)信息,主要是為自動(dòng)校準(zhǔn)系統(tǒng)提供功率傳感器的頻率測(cè)量范圍。在系統(tǒng)設(shè)計(jì)中選擇數(shù)據(jù)庫(kù)進(jìn)行信息管理,相較于將型號(hào)信息直接加到程序中,可以有效避免占用較大內(nèi)存,拖慢系統(tǒng)運(yùn)行速度的問(wèn)題。作為單獨(dú)的數(shù)據(jù)庫(kù)進(jìn)行界面操作,根據(jù)需要完成查詢、添加功能,而不需要重新進(jìn)行編譯。在進(jìn)行自動(dòng)校準(zhǔn)時(shí),系統(tǒng)根據(jù)自動(dòng)讀取的被檢功率傳感器型號(hào),從數(shù)據(jù)庫(kù)中檢索該型號(hào)的測(cè)量范圍,為頻率校準(zhǔn)點(diǎn)的設(shè)置提供依據(jù),避免出現(xiàn)校準(zhǔn)頻率點(diǎn)超出被校功率傳感器測(cè)量范圍的情況。檢測(cè)中出現(xiàn)新型號(hào)時(shí),通過(guò)操作界面的添加功能,將型號(hào)信息保存到數(shù)據(jù)庫(kù)中,完善型號(hào)庫(kù)。

2數(shù)據(jù)庫(kù)的功能與實(shí)現(xiàn)

2.1開(kāi)發(fā)平臺(tái)

功率傳感器自動(dòng)校準(zhǔn)系統(tǒng)采用VisualC++2010作為開(kāi)發(fā)工具,數(shù)據(jù)庫(kù)功能的開(kāi)發(fā)也使用該開(kāi)發(fā)工具,與整個(gè)系統(tǒng)保持良好的兼容性。

2.1.1數(shù)據(jù)庫(kù)的選擇與設(shè)計(jì)功率傳感器自動(dòng)校準(zhǔn)系統(tǒng)的數(shù)據(jù)庫(kù)管理,主要實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ)和訪問(wèn)。Oracle數(shù)據(jù)庫(kù)在數(shù)據(jù)庫(kù)開(kāi)發(fā)領(lǐng)域一直處于領(lǐng)先地位,系統(tǒng)可移植性好,效率高,適用于大型數(shù)據(jù)庫(kù)系統(tǒng)的開(kāi)發(fā),成本較高。綜合考慮數(shù)據(jù)庫(kù)的成本和兼容性,本系統(tǒng)選擇微軟公司的Access數(shù)據(jù)庫(kù)。Access是關(guān)聯(lián)式數(shù)據(jù)庫(kù)管理系統(tǒng),相比微軟的另一款關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)SQLServer,Access具有強(qiáng)大的數(shù)據(jù)處理和統(tǒng)計(jì)分析能力,同時(shí)結(jié)合了數(shù)據(jù)庫(kù)引擎和圖形用戶界面的特點(diǎn),部署簡(jiǎn)單方便、成本低,適用于小型數(shù)據(jù)庫(kù)管理系統(tǒng)的開(kāi)發(fā)和使用。[2]根據(jù)數(shù)據(jù)管理需求,本系統(tǒng)建立兩個(gè)數(shù)據(jù)庫(kù):型號(hào)信息數(shù)據(jù)庫(kù)與校準(zhǔn)信息數(shù)據(jù)庫(kù)。其中,型號(hào)信息數(shù)據(jù)庫(kù)主要功能是為自動(dòng)校準(zhǔn)工作提供被檢儀器的測(cè)量范圍,對(duì)其要求能夠?qū)崿F(xiàn)查詢、修改以及新型號(hào)信息的添加。校準(zhǔn)信息數(shù)據(jù)庫(kù)主要用于存儲(chǔ)被檢儀器的校準(zhǔn)信息,對(duì)其管理只需實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ)與查詢顯示即可。

2.1.2主要功能模塊(1)數(shù)據(jù)庫(kù)訪問(wèn)自動(dòng)校準(zhǔn)系統(tǒng)使用ADO(ActiveXDataObject)作為Access數(shù)據(jù)庫(kù)應(yīng)用程序開(kāi)發(fā)的接口,在數(shù)據(jù)庫(kù)操作和VC程序間架起一座橋梁,同時(shí)與結(jié)構(gòu)化查詢語(yǔ)言SQL結(jié)合使用,實(shí)現(xiàn)用戶對(duì)數(shù)據(jù)庫(kù)的各種操作。使用ADO作為接口對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)主要是通過(guò)四步實(shí)現(xiàn):①初始化COM庫(kù),引入ADO庫(kù)文件,為數(shù)據(jù)庫(kù)連接建立初始化環(huán)境;②使用Connection對(duì)象與數(shù)據(jù)庫(kù)建立連接,利用指針通過(guò)Connection對(duì)象的Open方法打開(kāi)數(shù)據(jù)庫(kù);③使用Recordset對(duì)象指針,結(jié)合SQL的SELECT語(yǔ)句,打開(kāi)相應(yīng)數(shù)據(jù)表格,實(shí)現(xiàn)對(duì)表格的訪問(wèn);④訪問(wèn)結(jié)束后,通過(guò)Close函數(shù)關(guān)閉兩個(gè)指針,退出連接,釋放資源。(2)數(shù)據(jù)存儲(chǔ)模塊數(shù)據(jù)存儲(chǔ)是自動(dòng)校準(zhǔn)系統(tǒng)數(shù)據(jù)庫(kù)的主要功能,實(shí)現(xiàn)對(duì)被校儀器基本信息和校準(zhǔn)結(jié)果的存儲(chǔ)。完成自動(dòng)校準(zhǔn)后,點(diǎn)擊工作界面菜單“保存數(shù)據(jù)”命令,數(shù)據(jù)庫(kù)中目錄表自動(dòng)添加一行,保存儀器基本信息;并創(chuàng)建一個(gè)以證書(shū)編號(hào)命名的數(shù)據(jù)表,用于存儲(chǔ)校準(zhǔn)數(shù)據(jù)。數(shù)據(jù)的存儲(chǔ)流程如圖2所示。數(shù)據(jù)存儲(chǔ)功能通過(guò)ADO對(duì)象的AddNew、Put-Collect函數(shù),結(jié)合SQL命令實(shí)現(xiàn)。AddNew函數(shù)具有添加功能,在數(shù)據(jù)表中添加空白行;PutCollect函數(shù)根據(jù)語(yǔ)句中的主鍵信息,將數(shù)據(jù)寫(xiě)入到空白行中,實(shí)現(xiàn)一組校準(zhǔn)數(shù)據(jù)的寫(xiě)入。系統(tǒng)通過(guò)循環(huán)寫(xiě)入實(shí)現(xiàn)對(duì)所有校準(zhǔn)結(jié)果的保存。(3)數(shù)據(jù)查詢模塊數(shù)據(jù)查詢主模塊要完成對(duì)數(shù)據(jù)庫(kù)的訪問(wèn),根據(jù)需求查詢符合一個(gè)或者多個(gè)條件的某個(gè)或某些儀器的信息,并顯示校準(zhǔn)結(jié)果。查詢模塊主要包括兩個(gè)界面:①操作界面,用于輸入查詢條件,根據(jù)查詢條件在數(shù)據(jù)庫(kù)中檢索目標(biāo)信息;②顯示界面,用于將查詢到的結(jié)果顯示到工作界面,通過(guò)MFC列表控件實(shí)現(xiàn)。查詢功能的工作界面如圖3所示。在操作界面未輸入查詢信息時(shí),顯示目錄表中所有信息,選中某條信息,則在下方列表控件中顯示對(duì)應(yīng)數(shù)據(jù)表中的校準(zhǔn)結(jié)果。

使用條件查詢時(shí),在數(shù)據(jù)庫(kù)中檢索所有符合條件的結(jié)果并顯示儀器基本信息,選中目標(biāo)儀器則顯示校準(zhǔn)結(jié)果。設(shè)計(jì)流程如圖4所示。為使查詢功能更便捷有效,數(shù)據(jù)查詢模塊要求能夠通過(guò)輸入關(guān)鍵字實(shí)現(xiàn)模糊查詢。SQL語(yǔ)言常用的模糊查詢語(yǔ)句:like語(yǔ)句和instr函數(shù)。[3-4]like關(guān)鍵字查詢?yōu)橥ㄅ浞樵兎椒?,使用?”和“_”等通配符結(jié)合關(guān)鍵字實(shí)現(xiàn)查詢;instr函數(shù)是一個(gè)字符串處理函數(shù),它在Oracle/PLSQL中是返回子字符串在源字符串中的位置。通常情況下,兩種方式查詢的結(jié)果相同。但由于檢索條件通過(guò)對(duì)話框輸入,需要進(jìn)行變量傳遞,like語(yǔ)句查詢以‘%’開(kāi)頭,在語(yǔ)句拼接時(shí)就會(huì)出現(xiàn)檢索條件無(wú)效的問(wèn)題;而instr是一個(gè)函數(shù),可以建立函數(shù)索引,且在數(shù)據(jù)量較大時(shí),通過(guò)函數(shù)檢索效率較高。[5]因此,在本系統(tǒng)設(shè)計(jì)時(shí)選擇使用instr函數(shù)實(shí)現(xiàn)模糊查詢。(4)數(shù)據(jù)添加與修改模塊數(shù)據(jù)添加與修改功能適用于型號(hào)信息數(shù)據(jù)庫(kù),在出現(xiàn)新型號(hào)或者型號(hào)信息需要修改時(shí),使用該功能對(duì)數(shù)據(jù)庫(kù)進(jìn)行修改,以便完善型號(hào)信息數(shù)據(jù)庫(kù)。操作界面如圖5所示,在相應(yīng)編輯框輸入型號(hào)、起始頻率和結(jié)束頻率,選擇修改或者添加按鈕,實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的更改。通過(guò)“添加”按鈕增加型號(hào)信息時(shí),系統(tǒng)首先通過(guò)SELECT語(yǔ)句根據(jù)型號(hào)查詢數(shù)據(jù)庫(kù)中是否含有該型號(hào)信息,若已存在,則彈出對(duì)話框提醒,避免重復(fù)添加;若不存在則通過(guò)AddNew、PutCollect函數(shù)組合將型號(hào)信息添加到數(shù)據(jù)庫(kù)中。在修改型號(hào)信息時(shí),同樣根據(jù)型號(hào)查詢數(shù)據(jù)庫(kù)中是否存在該條信息,若已存在直接通過(guò)PutCollect函數(shù)將新的信息覆蓋數(shù)據(jù)庫(kù)中已有信息,實(shí)現(xiàn)修改功能。

3結(jié)束

功率傳感器自動(dòng)校準(zhǔn)系統(tǒng)的開(kāi)發(fā)實(shí)現(xiàn)了儀器的自動(dòng)化測(cè)量,提高了工作效率。MicrosoftAccess數(shù)據(jù)庫(kù)的設(shè)計(jì),作為系統(tǒng)的主要數(shù)據(jù)存儲(chǔ)模塊,操作簡(jiǎn)單,為原始數(shù)據(jù)的長(zhǎng)期保存提供了方便。通過(guò)實(shí)驗(yàn)室試用,本系統(tǒng)具有良好的穩(wěn)定性,能夠滿足自動(dòng)校準(zhǔn)系統(tǒng)對(duì)數(shù)據(jù)管理功能的要求。

參考文獻(xiàn)

[1]高博,胡曉林,李濤.基于LabVIEW的電學(xué)測(cè)量設(shè)備核查系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].工業(yè)計(jì)量,2017,27(06):27~28+42.

[2]張運(yùn)詩(shī),仲兆準(zhǔn),鐘勝奎,謝光偉.基于VisualStudio2010的員工信息數(shù)據(jù)庫(kù)設(shè)計(jì)和實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù),2013,(28):6246~6249+6252.

[3]段紅英.SQL模糊查詢的運(yùn)用分析[J].計(jì)算機(jī)光盤(pán)軟件與應(yīng)用,2014,(14):142+144.

[4]張穎超,葉小嶺,吳士芬,陳逸菲.基于SQL的模糊查詢技術(shù)研究與實(shí)現(xiàn)[J].微電子學(xué)與計(jì)算機(jī),2005,22(01):113~117.

[5]李桂鳳.Access2010數(shù)據(jù)庫(kù)選擇與參數(shù)查詢功能對(duì)比及應(yīng)用[J].計(jì)算機(jī)產(chǎn)品與流通,2019,(01).

作者:鄭喜艷 張燕 趙熙 鄭開(kāi)放 石佳 單位:河南省計(jì)量科學(xué)研究院