淺談基于VFP的數(shù)據(jù)完整性教學(xué)_第1頁
淺談基于VFP的數(shù)據(jù)完整性教學(xué)_第2頁
淺談基于VFP的數(shù)據(jù)完整性教學(xué)_第3頁
淺談基于VFP的數(shù)據(jù)完整性教學(xué)_第4頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、    淺談基于vfp的數(shù)據(jù)完整性教學(xué)    楊明學(xué)【摘要】為保證數(shù)據(jù)庫中數(shù)據(jù)的精確性和可靠性,數(shù)據(jù)完整性的設(shè)計(jì)在數(shù)據(jù)庫的設(shè)計(jì)過程中是非常重要的。在vfp的教學(xué)過程中,從利用數(shù)據(jù)庫系統(tǒng)自身提供的完整性約束功能實(shí)現(xiàn)數(shù)據(jù)的完整性約束;利用觸發(fā)器實(shí)現(xiàn)數(shù)據(jù)的完整性約束;利用編程界面實(shí)現(xiàn)數(shù)據(jù)的完整性約束三個(gè)方面,分層次講述vfp的數(shù)據(jù)庫完整性的實(shí)現(xiàn)方法?!娟P(guān)鍵詞】數(shù)據(jù)完整性 vfp 教學(xué)一、前言數(shù)據(jù)完整性是指數(shù)據(jù)的精確性和可靠性,設(shè)計(jì)vfp數(shù)據(jù)庫的數(shù)據(jù)完整性,可以防止數(shù)據(jù)庫中存在不符合語義規(guī)定的數(shù)據(jù),防止因錯(cuò)誤信息的輸入輸出造成數(shù)據(jù)的錯(cuò)誤或數(shù)據(jù)的不一致。在vfp的

2、教學(xué)過程中,數(shù)據(jù)完整性是數(shù)據(jù)庫部分的教學(xué)難點(diǎn),學(xué)生對(duì)實(shí)現(xiàn)數(shù)據(jù)完整性的設(shè)計(jì)方法不易系統(tǒng)掌握,為此,在教學(xué)中我從以下三個(gè)方面,由淺入深、由易到難講述vfp數(shù)據(jù)庫完整性的設(shè)計(jì)。二、實(shí)現(xiàn)數(shù)據(jù)完整性的方法1、利用數(shù)據(jù)庫系統(tǒng)自身提供的完整性約束功能實(shí)現(xiàn)數(shù)據(jù)的完整性約束vfp是一個(gè)面向?qū)ο蟮年P(guān)系型數(shù)據(jù)庫管理系統(tǒng)。在vfp數(shù)據(jù)庫中,數(shù)據(jù)完整性一般包括實(shí)體完整性、域完整性和參照完整性。實(shí)體完整性是保證表中記錄唯一的特性,在vfp數(shù)據(jù)庫中,可以通過建立主索引或候選索引來實(shí)現(xiàn)實(shí)體完整性的約束。域完整性是指表中每個(gè)字段取值必須符合規(guī)定的邏輯,一般包括字段的缺省值、字段的有效性校驗(yàn)以及是否為空等內(nèi)容,利用vfp數(shù)據(jù)詞典

3、中的字段的有效性,可以設(shè)置字段的有效性規(guī)則、默認(rèn)值和信息。在vfp數(shù)據(jù)庫表設(shè)計(jì)器的字段選項(xiàng)卡的規(guī)則中輸入對(duì)字段數(shù)據(jù)有效性進(jìn)行檢查的規(guī)則,有效性規(guī)則實(shí)際上是一個(gè)條件,對(duì)于該字段輸入的數(shù)據(jù),vfp會(huì)自動(dòng)檢查它是否符合條件,若不符合必須進(jìn)行修改,直至與規(guī)則中輸入的條件相符合。當(dāng)該字段輸入的數(shù)據(jù)違反規(guī)則條件時(shí),出錯(cuò)信息將顯示。記錄的有效性規(guī)則用來檢查同一記錄中不同字段之間的邏輯關(guān)系,在vfp數(shù)據(jù)庫的數(shù)據(jù)詞典中提供了設(shè)置記錄有效性規(guī)則的功能,在vfp數(shù)據(jù)庫表設(shè)計(jì)器的選項(xiàng)卡中提供了記錄有效性包括規(guī)則和信息的設(shè)置,規(guī)則中用于設(shè)置記錄有效性的檢查條件,通常是包含兩個(gè)或多個(gè)字段之間應(yīng)當(dāng)遵守的數(shù)據(jù)規(guī)則的邏輯表達(dá)式

4、;對(duì)于數(shù)據(jù)庫中具有永久關(guān)系的相關(guān)表,在更新、插入或刪除記錄時(shí),若只改其中一個(gè)表的數(shù)據(jù),而不更改相關(guān)表的相應(yīng)數(shù)據(jù),則必然會(huì)影響數(shù)據(jù)的一致性,在vfp數(shù)據(jù)庫中設(shè)置了參照完整型用于限制相關(guān)數(shù)據(jù)表的數(shù)據(jù)一致性。vfp在參照完整性中設(shè)置了更新規(guī)則、插入規(guī)則、刪除規(guī)則,在對(duì)數(shù)據(jù)庫中具有永久關(guān)系的表進(jìn)行更新、插入、刪除記錄時(shí),必須遵照在參照完整性中預(yù)先設(shè)定的級(jí)聯(lián)、限制、忽略的完整性規(guī)則。2、利用觸發(fā)器實(shí)現(xiàn)數(shù)據(jù)的完整性約束利用觸發(fā)器可以完成比較復(fù)雜的完整性控制。觸發(fā)器是一種存儲(chǔ)過程,但和一般的存儲(chǔ)過程不同,一般的存儲(chǔ)過程可以由用戶通過存儲(chǔ)過程的名字直接調(diào)用,而觸發(fā)器主要是通過事件觸發(fā)而被執(zhí)行。vfp中設(shè)置了插

5、入、更新、刪除三種觸發(fā)器,當(dāng)對(duì)表文件進(jìn)行插入記錄、更新記錄、刪除記錄操作時(shí),vfp就會(huì)自動(dòng)執(zhí)行觸發(fā)器所定義的sql命令。觸發(fā)器觸發(fā)應(yīng)具備三個(gè)條件:事件、條件和動(dòng)作,當(dāng)數(shù)據(jù)庫進(jìn)行插入、刪除、修改操作時(shí),事件發(fā)生,觸發(fā)器將開始工作。vfp中可以通過數(shù)據(jù)庫的表設(shè)計(jì)器或命令兩種方法創(chuàng)建觸發(fā)器。數(shù)據(jù)庫表設(shè)計(jì)器中的“表”選項(xiàng)卡中觸發(fā)器部分,可以分別在插入觸發(fā)器、更新觸發(fā)器和刪除觸發(fā)器框中輸入觸發(fā)條件的邏輯表達(dá)式或用戶自定義的函數(shù);用creat trigger命令可以創(chuàng)建觸發(fā)器,可以將用該命令創(chuàng)建的觸發(fā)器存儲(chǔ)在數(shù)據(jù)庫中的編輯存儲(chǔ)過程中。創(chuàng)建觸發(fā)器的命令有三種:creat trigger on <表名&

6、gt; for insert as <觸發(fā)條件>,該命令用來創(chuàng)建插入觸發(fā)器;creat trigger on <表名> for update as <觸發(fā)條件>,該命令用來創(chuàng)建更新觸發(fā)器;creat trigger on <表名> for delete as <觸發(fā)條件>,該命令用來創(chuàng)建刪除觸發(fā)器。在使用觸發(fā)器時(shí)應(yīng)注意以下問題:不能對(duì)有插入觸發(fā)器的表使用insert命令,但可以使用insert-sql命令;刪除命令pack、zap不激發(fā)刪除觸發(fā)器;更新具有刪除標(biāo)記的記錄不觸發(fā)更新觸發(fā)器;觸發(fā)器是否立即激發(fā)還和表的當(dāng)前緩沖模式有關(guān)。3、

7、利用編程界面實(shí)現(xiàn)數(shù)據(jù)的完整性約束vfp數(shù)據(jù)庫管理系統(tǒng)提供了較完整的數(shù)據(jù)完整性約束手段,但利用編程保證數(shù)據(jù)的完整性,將極大地改善系統(tǒng)的可操作性。借助應(yīng)用系統(tǒng)編程的方法,在用戶輸入數(shù)據(jù)時(shí)可以直接檢查輸入數(shù)據(jù)是否符合規(guī)定。vfp的表單設(shè)計(jì)器為數(shù)據(jù)的輸入提供了可滿足各種需要的控件,利用表單設(shè)計(jì)器可以設(shè)計(jì)出滿足用戶需要的有好的操作界面。在進(jìn)行界面設(shè)計(jì)時(shí),可根據(jù)不同的數(shù)據(jù)輸入要求,選擇合適的控件,如選項(xiàng)按鈕組、組合框、列表框、復(fù)選框微調(diào)框等。要充分利用不同類型的控件來輸入數(shù)據(jù)可以明顯提高數(shù)據(jù)的錄入速度,降低數(shù)據(jù)輸入的出錯(cuò)率,也可以在相應(yīng)輸入數(shù)據(jù)的控件的lostfocus中輸入檢驗(yàn)數(shù)據(jù)是否符合規(guī)定的程序代碼

8、。三、結(jié)束語在利用vfp數(shù)據(jù)庫管理系統(tǒng)進(jìn)行應(yīng)用程序開發(fā)時(shí),數(shù)據(jù)庫設(shè)計(jì)是一個(gè)重要的環(huán)節(jié),而數(shù)據(jù)的完整性設(shè)計(jì)尤為重要,數(shù)據(jù)完整性控制實(shí)現(xiàn)的好壞直接影響到數(shù)據(jù)庫的性能。數(shù)據(jù)字典是最直接、最方便的數(shù)據(jù)完整性控制方法,可以在很大程度上減少應(yīng)用程序開負(fù)擔(dān);觸發(fā)器的編程比較麻煩,在具體使用時(shí),可使用系統(tǒng)內(nèi)部提供的觸發(fā)器自動(dòng)生成程序完成。在教學(xué)過程中,從使用數(shù)據(jù)庫數(shù)據(jù)詞典設(shè)計(jì)數(shù)據(jù)庫完整性約束功能,到利用觸發(fā)器編程設(shè)計(jì)數(shù)據(jù)的完整性,再到利用前段開發(fā)工具編程實(shí)現(xiàn)數(shù)據(jù)庫的完整性設(shè)計(jì),使學(xué)生對(duì)數(shù)據(jù)庫完整性的實(shí)現(xiàn)方法有了整體和系統(tǒng)的概念。參考文獻(xiàn):1孟先平,王劍云.visual foxpro程序設(shè)計(jì)教程m,上海:上海交通大學(xué)出版社,20062史濟(jì)民,湯觀全visual foxpro及其應(yīng)用系統(tǒng)開發(fā),北京:清華大學(xué)出版社,20063田嵐,試論vfp

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論