談?wù)勌岣咻斎霐?shù)據(jù)正確性的方法

時(shí)間:2022-08-31 04:55:00

導(dǎo)語:談?wù)勌岣咻斎霐?shù)據(jù)正確性的方法一文來源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。

談?wù)勌岣咻斎霐?shù)據(jù)正確性的方法

摘要:本文主要討論提高輸入數(shù)據(jù)正確性的方法,供讀者參考與借鑒。

關(guān)鍵詞:數(shù)據(jù)輸入數(shù)據(jù)校驗(yàn)雙工輸入加權(quán)求和

引言

在數(shù)據(jù)庫管理系統(tǒng)輸入模塊的開發(fā)中,如何提高輸入數(shù)據(jù)的正確性是開發(fā)者應(yīng)考慮的一個(gè)重

要問題。為了提高輸入數(shù)據(jù)的正確性,其基本的功能要求是:①輸入操作簡(jiǎn)單、輕松;②輸

入效率高,即具有重復(fù)內(nèi)容自動(dòng)復(fù)制和簡(jiǎn)易代碼輸入替代功能;③輸入格式美觀大方;④具

有醒目的提示等。然而,僅有這些功能要求是不夠的,它們不能從根本上提高輸入數(shù)據(jù)的正

確性。因?yàn)?,大量的原始?shù)據(jù)的輸入是件繁瑣而又單調(diào)的工作,難免出錯(cuò)。所以,必須要有

更嚴(yán)格、更有效的科學(xué)方法和手段來提高輸入數(shù)據(jù)的正確性。本文給出了提高輸入數(shù)據(jù)正確

性的方法,供數(shù)據(jù)庫管理系統(tǒng)的開發(fā)者參考與借鑒。

二、輸入數(shù)據(jù)的校驗(yàn)與查錯(cuò)方法

輸入數(shù)據(jù)的校驗(yàn)與查錯(cuò)方法常常有兩種,其中第一種是邊輸入邊校驗(yàn)法。在這種方法中,假

若輸入數(shù)據(jù)有錯(cuò),則要求數(shù)據(jù)錄入者立即更正錯(cuò)誤。這種方法常常用于所輸入的數(shù)據(jù)具有某

種規(guī)律和特征,若數(shù)據(jù)錄入者鍵入的數(shù)據(jù)違背了這個(gè)規(guī)律和特征,即立即給出輸入出錯(cuò)警告

,并強(qiáng)制性要求數(shù)據(jù)錄入者對(duì)當(dāng)前輸入的數(shù)據(jù)給予修正。例如,在財(cái)務(wù)管理系統(tǒng)中,一張“

記帳憑證”一般有借方金額和貸方金額兩欄數(shù)字。會(huì)計(jì)制度要求同一張憑證中借方金額合計(jì)

和貸方金額合計(jì)必須相等。根據(jù)這一特征,所以在開發(fā)“記帳憑證”數(shù)據(jù)輸入程序時(shí),程序

應(yīng)能自動(dòng)判斷,在一張“記帳憑證”的數(shù)據(jù)輸入結(jié)束后,借方金額合計(jì)與貸方金額合計(jì)是否

相等,若不相等,應(yīng)強(qiáng)制要求數(shù)據(jù)輸入者立即重新輸入。又例如,在每年的高考中,考生的

成績(jī)數(shù)據(jù)有一部分要通過人工閱卷評(píng)分后,然后由專人輸入計(jì)算機(jī)。對(duì)于考生成績(jī)數(shù)據(jù),它

所具有的特征是:每題的最高分和最低分(零分)是確定的,并且均為數(shù)字字符。根據(jù)這個(gè)特

征,所以在開發(fā)的考生成績(jī)數(shù)據(jù)管理系統(tǒng)的輸入模塊中,應(yīng)具有如下功能,即在每題數(shù)據(jù)輸

入結(jié)束后,自動(dòng)判斷輸入的分?jǐn)?shù)值是否符合上述規(guī)律,若不符合,則應(yīng)立即發(fā)出警告,并強(qiáng)

制要求錄入者重新輸入。

數(shù)據(jù)校驗(yàn)與查錯(cuò)的第二種方法是雙工輸入比較法。所謂雙工輸入比較法,就是將同一批數(shù)據(jù)

由兩個(gè)輸入人員在不同的時(shí)間和不同的終端上分別錄入,并且形成兩個(gè)臨時(shí)數(shù)據(jù)庫文件,然

后由第三個(gè)人在程序的作用下對(duì)兩個(gè)庫文件中的數(shù)據(jù)進(jìn)行逐項(xiàng)比較并進(jìn)行確認(rèn)或修改。在這

種方法中,盡管同一批數(shù)據(jù)被錄入了兩次從而造成了數(shù)據(jù)冗余和影響了錄入進(jìn)度,但對(duì)于被

錄入的數(shù)據(jù)不存在明顯的規(guī)律和上述第一種方法不能查出輸入出錯(cuò)的場(chǎng)合,以及對(duì)輸入數(shù)據(jù)

的正確性要求很高的場(chǎng)合,是一種不可缺少的和行之有效的方法,因?yàn)椋瑑蓚€(gè)數(shù)據(jù)錄入者都

同時(shí)在某處出錯(cuò)的機(jī)會(huì)極少,故這種方法可以極大地減少出錯(cuò)率。根據(jù)概率論原理,如果兩

個(gè)數(shù)據(jù)錄入者各自的出錯(cuò)率為百分之一,則雙工輸入法的出錯(cuò)率僅為萬分之一。雙工輸入比

較法在FoxPro環(huán)境下的基本算法是:

①將同一批數(shù)據(jù)由兩個(gè)錄入者在不同時(shí)間和不同的終端上錄入,并存入兩個(gè)不同名

的庫文件中。

②輸入“①”中產(chǎn)生的兩個(gè)庫文件名。

③在兩個(gè)工作區(qū)中分別打開一個(gè)庫文件,并按記錄號(hào)使兩個(gè)庫文件建立關(guān)聯(lián)。

④對(duì)兩個(gè)庫文件中的對(duì)應(yīng)記錄進(jìn)行逐項(xiàng)比較,若不相等,則進(jìn)行登記,包括位置的登記。

⑤若記錄未結(jié)束,則記錄指針加1,轉(zhuǎn)④。

⑥打印輸出所有不相等的數(shù)據(jù)項(xiàng)及其位置。

⑦確認(rèn)和修改。

在上述算法“④”中,若一個(gè)記錄中的同類型的數(shù)據(jù)項(xiàng)很多,則程序往往顯得冗長。為了解

決這個(gè)問題,可以把一個(gè)記錄中同類型的數(shù)據(jù)項(xiàng)值加在一起求和,然后對(duì)求和結(jié)果進(jìn)行比較

。這樣,可以大大減少程序中關(guān)系表達(dá)式的數(shù)目,從而簡(jiǎn)化了程序并提高了程序的執(zhí)行速度

。但此時(shí)最好用加權(quán)求和的方法。因?yàn)椋邢嗤瑪?shù)據(jù)類型、相同數(shù)據(jù)項(xiàng)個(gè)數(shù)的兩次錄入的

數(shù)據(jù),其求和結(jié)果相等和并不等于兩次錄入的數(shù)據(jù)的對(duì)應(yīng)項(xiàng)也相等,如表1所示。

表1:考生部分題的成績(jī)數(shù)據(jù)雙工錄入對(duì)照表

第二題(權(quán):3)第三題權(quán)

:2第四題權(quán):1求和

不加權(quán)加權(quán)

第一次錄入25151050115

第二次錄入15251050105

從表1可以清楚地看出,盡管第二次錄入時(shí)把第二、三題的數(shù)據(jù)順序輸入反了,其和值

仍是50。若將第二、三、四題的得分值分別對(duì)應(yīng)乘以位權(quán)3、2、1后再相加,就能發(fā)現(xiàn)兩次

錄入的求和結(jié)果不相等。這樣就可查出第二、三題的數(shù)據(jù)錯(cuò)位。而這種數(shù)據(jù)錯(cuò)位錯(cuò)誤在有些

實(shí)際問題中也是不允許的。

以上討論的兩種數(shù)據(jù)校驗(yàn)與查錯(cuò)方法,有時(shí)可以結(jié)合起來使用,即先用邊輸入邊校驗(yàn)的方法

進(jìn)行第一次把關(guān),濾去誤輸入的錯(cuò)誤數(shù)據(jù)。然后再用雙工輸入校驗(yàn)法進(jìn)行第二次把關(guān),第一

步校正誤輸入的錯(cuò)誤數(shù)據(jù)。這樣,可以確保輸入的原始數(shù)據(jù)的正確。

三、結(jié)束語

在數(shù)據(jù)庫管理系統(tǒng)的輸入模塊開發(fā)中,為了提高入庫原始數(shù)據(jù)的正確性,數(shù)據(jù)的校驗(yàn)與查錯(cuò)

功能是不可缺少的?;仡櫸覇挝唤哪?95~98年)承擔(dān)的安徽省高考人工閱卷考生成績(jī)的錄

入與管理,由于采取了一系列行之有效的措施,特別是采用了本文給出的提高輸入數(shù)據(jù)正確

性的方法,所以,連續(xù)四年未發(fā)現(xiàn)考生成績(jī)輸入錯(cuò)誤。受到了安徽省教委有關(guān)部門的表揚(yáng)。