第六章 系統(tǒng)總體設計_第1頁
第六章 系統(tǒng)總體設計_第2頁
第六章 系統(tǒng)總體設計_第3頁
第六章 系統(tǒng)總體設計_第4頁
第六章 系統(tǒng)總體設計_第5頁
已閱讀5頁,還剩80頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第六章第六章系統(tǒng)總體設計系統(tǒng)總體設計v 第六章是關于系統(tǒng)總體設計的基本知識。主要分為系統(tǒng)總體結構設計、數(shù)據(jù)庫設計、數(shù)據(jù)庫的物理實現(xiàn)和代碼設計加節(jié)的內容。學習本章需要了解系統(tǒng)總體設計的目標任務和工作內容,掌握系統(tǒng)總體設計的結構化方法和主要圖形工具,并能夠使用Visual foxpro數(shù)據(jù)庫管理系統(tǒng)建立和操縱數(shù)據(jù)庫。v 本章也是這門課程的重點章節(jié)之一。在歷年考試中,本章考核的內容以各種題型出現(xiàn)過,其中包括實際應用的部分。當然還包括對Visual foxpro的基本操作。本章在筆試中占515分左右。系統(tǒng)分析報告經過專家和用戶的評審、批準后、開發(fā)工作進入系統(tǒng)設計階段。系統(tǒng)設計階段的主要目的是確定新系統(tǒng)

2、的物理實施方案。系統(tǒng)設計階段的主要活動有:(1)系統(tǒng)總體設計(2)系統(tǒng)詳細設計(3)編寫系統(tǒng)設計報告 本章主要是系統(tǒng)總體設計,第七章講系統(tǒng)詳細設計和編寫系統(tǒng)設計報告。6.l系統(tǒng)總體結構設計系統(tǒng)總體結構設計v6.1.1 系統(tǒng)總體結構設計的任務 v系統(tǒng)總體結構設計的任務,是根據(jù)系統(tǒng)分析的邏輯模型設計應用軟件系統(tǒng)的物理結構。系統(tǒng)物理模型必須符合邏輯模型,能夠完成邏輯模型所規(guī)定的信息處理功能,這是物理設計的基本要求。v 系統(tǒng)應具有可修改性,即易讀,易于進行查錯、改錯、可以根據(jù)環(huán)境的變化和用戶的要求進行各種改變和改進。系統(tǒng)是否具有可修改性,對于系統(tǒng)開發(fā)和維護影響極大。據(jù)統(tǒng)計,在系統(tǒng)生命周期中各階段的應用

3、軟件費用及人力投入大體分布如下: .系統(tǒng)開發(fā):20 .系統(tǒng)維護:80 (2007.4,單選,單選16)在系統(tǒng)生命周期中,系統(tǒng)維護所占用的費用及人力投入比例大約() A.80% B.50% C.35% D.15%(2004.10,單選,單選22)在應用系統(tǒng)總體結構設計中,要著重解決的問題是使系統(tǒng)具有()A可讀性 B可重用性C可移植性 D可修改性6.1.2結構化設計的基本思想結構化設計的基本思想v 1.結構化設計的要點 系統(tǒng)是否具有可修改性與其結構有著密切的關系。由于波動效應的存在,對某個模塊的改動可能要修改整個系統(tǒng),對于組成部分有復雜聯(lián)系的大系統(tǒng),各部分間錯綜復雜的聯(lián)系是造成修改工作難于進行的主

4、要原因。因此必須設計一種合理的物理結構,將“波動效應”降到最低限度,才能提高系統(tǒng)的可修改性。1974年美國的w.Stevens等首先提出了“結構化設計” 的構想,成為系統(tǒng)設計的基本思想。v “結構化設計”的構想,成為系統(tǒng)設計的基本思想。其要點如下: v (1)模塊化。模塊化。這即指將系統(tǒng)按一定規(guī)則劃分成相對獨立的模塊。模塊是結構化系統(tǒng)的基本元素。 v (2)由頂向下,逐步求精。由頂向下,逐步求精。系統(tǒng)劃分模塊的工作應按層次進行:把整個系統(tǒng)看做一個模塊,然后把它按功能分解成若干第一層模塊,它們各擔負一定的局部功能,共同完成整個系統(tǒng)的功能。每個第一層模塊又可以進一步分解成為更簡單一些的第二層模塊,

5、越下層的模塊,其功能越具體、越簡單。 v (3)上層模塊分解為下層模塊,有三種不同的結構形式,即順序結構、選擇結上層模塊分解為下層模塊,有三種不同的結構形式,即順序結構、選擇結構和循環(huán)結構構和循環(huán)結構。如課本P158圖6-2(07.10,簡答39,將上層模塊分解為下層模塊時,可以有三種不同的結構形式,請寫出三種結構形式的名稱并畫出各自的控制結構圖。)(2007.04,單選,單選15)構成結構化系統(tǒng)的基本元素是( ) A.程序 B.字段 C.模塊 D.接口(2006.10,單選,單選16)造成復雜系統(tǒng)修改工作難于進行的主要原因是( )A業(yè)務流程B層次結構C外部環(huán)境D波動效應v (2005.4,單

6、選,單選33,2003.10,單選,單選31)描述系統(tǒng)物理模型的主要工具是( )A.N-S圖 B.數(shù)據(jù)流程圖C.E-R圖 D.控制結構圖v (2004.4,單選,單選19)結構化設計思想的要點不包括( ) A.模塊化 B.自頂向下,逐步求精 C.自底向上 D.模塊分解時只采用順序、選擇和循環(huán)三種基本結構方式控制結構圖控制結構圖v 控制結構圖也稱為軟件結構圖或模塊結構圖,它表示出一個系統(tǒng)的層次分解關系、模塊調用關系、模塊之間數(shù)據(jù)流和控制信息流的傳遞關系,它是系統(tǒng)物理結構的主要工具。v 2.控制結構圖的基本符號控制結構圖的基本符號模塊模塊 模塊調用關系模塊調用關系 數(shù)據(jù)傳遞數(shù)據(jù)傳遞 控制信息控制信

7、息 循環(huán)調用循環(huán)調用 選擇調用選擇調用 數(shù)據(jù)存儲數(shù)據(jù)存儲 2.控制結構圖的基本符號控制結構圖的基本符號v 如圖如圖6-2所示所示產生最佳解計算最佳解好輸入解得到好輸入輸出結果好輸入解讀輸入編輯輸入結果格式化顯示結果始輸入原原始輸入編輯結果解化的解式格解的化式格2.控制結構圖的規(guī)定控制結構圖的規(guī)定模塊之間的調用,如課本P159圖6-3,按以下規(guī)則進行:(1)每個模塊有自身的任務,只有接收到上級模塊的調用命令時才能執(zhí)行。每個模塊有自身的任務,只有接收到上級模塊的調用命令時才能執(zhí)行。(2)模塊之間的通信只限于其直接上、下級模塊,任何模塊不能直接與其他上下模塊之間的通信只限于其直接上、下級模塊,任何模

8、塊不能直接與其他上下級模塊或同級模塊發(fā)生通信聯(lián)系級模塊或同級模塊發(fā)生通信聯(lián)系。 (3) 若有某模塊要與非直接上、下級的其他模塊發(fā)生通信聯(lián)系,必須通過其上級模塊進行傳遞。 (4)模塊調用順序為自上而下模塊調用順序為自上而下。在控制結構圖中,把一個系統(tǒng)分解為若干模塊,實質上是把一件比較抽象、其物理內容不大確定的任務,分解為若干件比較具體的、物理內容比較確定的任務。 控制結構圖既可以反映系統(tǒng)整體結構,又能反映系統(tǒng)的細節(jié),能準確反映各組成部分(各模塊) 及它們之間的聯(lián)系。 (2007.10,單選,單選16)以下對模塊功能的描述中,正確的是 【 】A上層模塊的任務比較具體 B下層模塊的任務比較抽象C非直

9、接上下級模塊間不能通信 D模塊調用的順序是自上而下(2004.4,單選,單選25)在規(guī)范的控制結構圖中,同級模塊間的通信( )A可直接進行 B可通過這些模塊的直接上級模塊來直接進行C必須通過這些模塊的下級模塊來傳遞 D必須通過這些模塊的上級模塊進行傳遞 6.1.3模塊分解的規(guī)則模塊分解的規(guī)則1、模塊獨立性所謂兩個模塊彼此完全獨立,是指其中任一模塊在運行時,與另一個模塊存在無關。獨立性只是一個相對概念。具有獨立功能而且和其它模塊之間相互作用少的模塊,特為獨立性高的模塊。保證模塊獨立性高是設計一個系統(tǒng)的關鍵,它具有以下優(yōu)點。系統(tǒng)容易開發(fā)。系統(tǒng)開發(fā)往往由若干人分工合作完成,由于模塊之間聯(lián)系少,接口簡

10、單,可以簡化合作者之間的協(xié)調工作。系統(tǒng)可靠性高。模塊之間的相互影響小,當一個模塊出錯時,產生波動效應的概率低,從而提高了系統(tǒng)的可靠性。系統(tǒng)容易維護:在對一個模塊進行修改和維護時,不必擔心其他模塊內部是否會受到影響。v 模塊獨立程度可以由兩個定性指標衡量,即:為保證模塊相對獨立,應使模塊內部自身自身聯(lián)系緊密,而模塊外部互相之間的信息聯(lián)系要盡可能減少,這是設計物理模型的兩項重要原則。v (07.4,簡答39,簡述模塊獨立性的優(yōu)點和設計模塊的基本原則)。v 要衡量模塊自身是否緊密、與外部的聯(lián)系是否合理,需引入模塊凝聚、模塊耦合的概念。2、模塊凝聚、模塊凝聚(2007.04,單選,單選19)在比較模塊

11、獨立性時,凝聚程度最高的是() A.邏輯凝聚B.數(shù)據(jù)凝聚 C.功能凝聚D.時間凝聚(2004.10,單選,單選20)工資管理模塊包含輸入工資變動數(shù)據(jù),計算工資、匯總工資、輸出工資等功能,它的凝聚類型屬于()A偶然凝聚 B時間凝聚C數(shù)據(jù)凝聚 D功能凝聚(2004.4,單選,單選20)如果一個模塊執(zhí)行兩個功能,且各功能的處理內容無關,這種模塊的凝聚類型不是()A功能凝聚B數(shù)據(jù)凝聚 C時間凝聚D不能確定3、模塊的耦合、模塊的耦合(2007.10,單選,單選18)在系統(tǒng)總體設計中,模塊間的控制耦合應()A.全部采用B.盡可能多用C.盡可能少用D.全部不用6.1.4控制結構圖的繪制控制結構圖的繪制v 繪

12、制控制結構圖的依據(jù)是數(shù)據(jù)流程圖。繪制控制結構圖,首先是將上層數(shù)據(jù)流程圖映射為上層控制結構圖,由頂層數(shù)據(jù)流程圖開始,逐級下推。 每一層數(shù)據(jù)流程圖(DFD) 中的“處理功能”,映射為相應層次控制結構圖中的“模塊”;而DFD中流人“處理功能” 的數(shù)據(jù)流映射為輸入模塊的數(shù)據(jù)流,DFD中流出“處理功能”的數(shù)據(jù)流映射成從“模塊”中輸出的數(shù)據(jù)流。低層次模塊結構的分解,一方面可參照低層次數(shù)據(jù)流程圖的功能結構;另一方面應按照模塊分解的規(guī)則,將凝聚程度低的、或具有控制耦合、非法耦合的結構進行分解。由于待分解的模塊凝聚類型不同,在分解時采用以下兩種不同的方式: 1.以轉換為中心結構的分解以轉換為中心結構的分解v 如

13、果待分解的模塊是一個數(shù)據(jù)凝聚的模塊,即內部包含若干順序執(zhí)行且對某些數(shù)據(jù)進行轉換處理,稱為以轉換為中心的結構。這種模塊可分解為輸入、處理、輸出三大部分。如圖6-10 工資管理模塊的分解應用應用:以轉換為中心結構的模塊的分解以轉換為中心結構的模塊的分解v(2006.10,應用題應用題42)根據(jù)數(shù)據(jù)計算的數(shù)據(jù)流圖根據(jù)數(shù)據(jù)計算的數(shù)據(jù)流圖輸入數(shù)據(jù)數(shù)據(jù)求解打印輸出畫出以轉換為中心的控制結構圖。2.以業(yè)務為中心結構的分解以業(yè)務為中心結構的分解v 待分解的模塊要處理幾項邏輯上相似的業(yè)務,即它是一個邏輯凝聚的模塊。這種模塊可以將之分解為一個檢查業(yè)務類型的模塊和一個調度模塊,根據(jù)不同的業(yè)務類型,調度模塊調用不同的

14、下層模塊,進行不同的處理。 v 以上兩種分解方式常常要混合使用,以達到模塊凝聚程度高、模塊之間獨立性強、易于修改的目的。 (2007.10,單選單選17)需要采用以業(yè)務為中心方式分解的模塊類型是 【 】 A數(shù)據(jù)凝聚 B邏輯凝聚 C功能凝聚 D時間凝聚(2005.4,單選單選38)在模塊分解時,如果待分解的是一個邏輯凝聚的模塊,它可以分解為一個檢查業(yè)務類型的模塊和一個( )A.輸入模塊 B.輸出模塊C.調度模塊 D.處理模塊6.2數(shù)據(jù)庫設計數(shù)據(jù)庫設計6.2.1 數(shù)據(jù)庫設計的要求和步驟 1.數(shù)據(jù)庫設計的要求 數(shù)據(jù)庫設計的目標是建立一個合適的數(shù)據(jù)模型。這個數(shù)據(jù)模型應當是: (1)滿足用戶要求:既能合

15、理地組織用戶需要的所有數(shù)據(jù),又能支持用戶對數(shù)據(jù)的所有處理功能。 (2)滿足某個數(shù)據(jù)庫管理系統(tǒng)的要求:能夠在數(shù)據(jù)庫管理系統(tǒng)中實現(xiàn)。 (3)具有較高的范式:數(shù)據(jù)完整性好、效益高,便于理解和維護,沒有數(shù)據(jù)沖突。 (06.04,簡答49)簡述數(shù)據(jù)庫設計的目標和要求2.數(shù)據(jù)庫設計步驟數(shù)據(jù)庫設計步驟v 數(shù)據(jù)庫設計可以分為概念結構設計、邏輯結構設計和物理結構設計三個階段。n(1)概念結構設計。這是數(shù)據(jù)庫設計的第一個階段,在管理信概念結構設計。這是數(shù)據(jù)庫設計的第一個階段,在管理信息系統(tǒng)的分析階段,已經得到了系統(tǒng)的數(shù)據(jù)流程圖和數(shù)據(jù)字典,息系統(tǒng)的分析階段,已經得到了系統(tǒng)的數(shù)據(jù)流程圖和數(shù)據(jù)字典,現(xiàn)在要結合數(shù)據(jù)規(guī)范化

16、的理論,用一種數(shù)據(jù)模型將用戶的數(shù)據(jù)現(xiàn)在要結合數(shù)據(jù)規(guī)范化的理論,用一種數(shù)據(jù)模型將用戶的數(shù)據(jù)需求明確地表示出來。需求明確地表示出來。概念數(shù)據(jù)模型是面向問題的模型,反映了用戶的現(xiàn)實工作概念數(shù)據(jù)模型是面向問題的模型,反映了用戶的現(xiàn)實工作環(huán)境,是與數(shù)據(jù)庫的具體實現(xiàn)技術無關的。建立系統(tǒng)概念數(shù)據(jù)環(huán)境,是與數(shù)據(jù)庫的具體實現(xiàn)技術無關的。建立系統(tǒng)概念數(shù)據(jù)模型的過程叫做概念結構設計。模型的過程叫做概念結構設計。 v (2) 邏輯結構設計。根據(jù)已經建立的概念數(shù)據(jù)模型,以及所采用的某個數(shù)據(jù)庫管理系統(tǒng)軟件的數(shù)據(jù)模型特性,按照一定的轉換規(guī)則,把概念模型轉換為這個數(shù)據(jù)庫管理系統(tǒng)所能夠接受的邏輯數(shù)據(jù)模型。不同的數(shù)據(jù)庫管理系統(tǒng)提

17、供了不同的邏輯數(shù)據(jù)模型,如層次模型、網(wǎng)狀模型、關系模型等。 v (3) 物理結構設計。為一個確定的邏輯數(shù)據(jù)模型選擇一個最適合應用要求的物理結構的過程,就叫做數(shù)據(jù)庫的物理結構設計。數(shù)據(jù)庫在物理設備上的存儲結構和存取方法稱為數(shù)據(jù)庫的物理數(shù)據(jù)模型。 6.2.2概念結構設計概念結構設計v描述概念數(shù)據(jù)模型的主要工具是E-R(實體一聯(lián)系) 模型,或者叫做E-R圖。利用E-R圖實現(xiàn)概念結構設計的方法就叫做E-R方法。1.概念模型的表示方法概念模型的表示方法vE-R圖主要是由實體、屬性和聯(lián)系三個要素構成的。在E-R圖中,使用了下面四種基本的圖形符號。 (E-R模型符號歷年也是多次考過選擇題)(1)實體:用矩形

18、框表示,框內寫明實體名稱.如:學生表示表示”學生學生”這個實體這個實體(2)屬性屬性:用橢圓形框表示用橢圓形框表示,框內寫明屬性名稱框內寫明屬性名稱.表示表示”學號學號”這個屬這個屬性性如如:學號(3)聯(lián)系聯(lián)系:用菱形框表示用菱形框表示,框內寫明聯(lián)系名稱框內寫明聯(lián)系名稱,并用線分別與有關的實并用線分別與有關的實體連接起來體連接起來,同時在線上注明聯(lián)系類型同時在線上注明聯(lián)系類型(1:1,1:n,m:n)。表示“選修”這個聯(lián)系如:選修表示“選修”這個聯(lián)系v(2007.10,單選17)在數(shù)據(jù)庫設計的過程中,采用E-R模型屬于()A、邏輯數(shù)據(jù)模型B、物理數(shù)據(jù)模型C、關系數(shù)據(jù)模型D、概念數(shù)據(jù)模型2.確定

19、系統(tǒng)實體、屬性及聯(lián)系確定系統(tǒng)實體、屬性及聯(lián)系v 利用系統(tǒng)分析階段建立的數(shù)據(jù)字典,并對照數(shù)據(jù)流程圖對系統(tǒng)中的各個數(shù)據(jù)項進行分類、組織,確定系統(tǒng)中的實體、實體的屬性、標識實體的碼以及實體之間聯(lián)系的類型。 在數(shù)據(jù)字典中“數(shù)據(jù)項” 是基本數(shù)據(jù)單位,一般可以作為實體的屬性?!皵?shù)據(jù)結構”、“數(shù)據(jù)存儲”和“數(shù)據(jù)流”條目都可以作為實體,因為它們總是包含了若干的數(shù)據(jù)項。作為屬性必須是不可再分的數(shù)據(jù)項,也就是說在屬性中不能包含其他的屬性。 v(2007.04,單選18)在數(shù)據(jù)庫設計過程中,實體屬性對應的數(shù)據(jù)字典條目是()A、數(shù)據(jù)結構B、數(shù)據(jù)流C、數(shù)據(jù)存儲D、數(shù)據(jù)項3.確定局部確定局部(分分)E-R圖圖v根據(jù)上面的

20、分析,可以畫出部分實體聯(lián)系圖。 在這些實體中有下畫線的屬性可以作為實體的碼,這幾個實體之間存在著1:1、1:n和m:n幾種聯(lián)系。 v下面一個簡單的E-R圖為例,給同學們一個直觀的體會。學生選修課程mn學號姓名性別成績課程號課名 學時mmmmmmmmmmmmmmmmm4.集成完整集成完整(總總)E-R圖圖v各個局部(分) E-R圖畫好以后,應當將它們合并起來集成為完整(總) E-R圖。在集成時應當注意如下幾點: (1) 消除不必要的冗余實體、屬性和聯(lián)系。 (2) 解決各分E-R圖之間的沖突。 (3) 根據(jù)情況修改或重構E-R圖。6.2.3邏輯結構設計邏輯結構設計v 邏輯結構設計的任務,就是把概念

21、結構設計階段建立的基本E-R圖,按選定的管理系統(tǒng)軟件支持的數(shù)據(jù)模型(層次、網(wǎng)狀、關系) ,轉換成相應的邏輯模型。這種轉換要符合關系數(shù)據(jù)模型的原則。 E-R圖向關系模型的轉換是要解決如何將實體和實體間的聯(lián)系轉換為關系,并確定這些關系的屬性和碼。這種轉換一般按下面的原則進行: v (1) 一個實體轉換為一個關系,實體的屬性就是關系的屬性,實體的碼就是關系的碼。 v (2) 一個聯(lián)系也轉換為一個關系,聯(lián)系的屬性及聯(lián)系所連接的實體的碼都轉換為關系的屬性,但是關系的碼會根據(jù)聯(lián)系的類型變化,如果是: 1:1聯(lián)系,兩端實體的碼都成為關系的候選碼。 1:n聯(lián)系,n端實體的碼成為關系的碼。 m:n聯(lián)系,兩端實體

22、碼的組合成為關系的碼。 v (3) 具有相同碼的關系可以合并。 v 1.轉換關系 v 2.合并關系 按照按照E-R圖向關系模型轉換的原則將下列圖向關系模型轉換的原則將下列E-R圖(題圖(題42圖)轉換為圖)轉換為關系。關系。職工信息數(shù)據(jù)庫概念結構如下職工信息數(shù)據(jù)庫概念結構如下:寫出關系數(shù)據(jù)庫的邏輯結構,主碼用下劃線標記。 v學校有若干班級,每個班級有若干學生,每個學生選修多門課程,每門課程多名學生選修,現(xiàn)要產生如下學生成績單,試設計滿足成績單的關系數(shù)據(jù)模型。學生成績單學生成績單v生產與銷售系統(tǒng)數(shù)據(jù)庫的生產與銷售系統(tǒng)數(shù)據(jù)庫的ER圖如圖圖如圖1:(2006.10,單選,單選17)在E-R圖向關系模

23、型轉換時,若A、B兩個實體之間存在l n的聯(lián)系,那么這個聯(lián)系的碼應當是( ) AA實體的碼 BB實體的碼 CA和B實體碼的組合 DA或B實體的碼(2005.10,單選,單選13)有一個1:1聯(lián)系的E-R模型,在向關系模型轉換時,它最多轉換成 ( ) A一個關系 B二個關系。 C三個關系 D四個關系6.3數(shù)據(jù)庫的物理實現(xiàn)數(shù)據(jù)庫的物理實現(xiàn)v 數(shù)據(jù)庫設計的最后階段是確定數(shù)據(jù)庫在物理設備上的存儲結構和存取方法,也就是設計數(shù)據(jù)庫的物理數(shù)據(jù)模型。 v 6.3.1 建立VFP的數(shù)據(jù)表 n數(shù)據(jù)表數(shù)據(jù)表也簡稱表,在也簡稱表,在VFP中數(shù)據(jù)表一般應當包含在數(shù)據(jù)庫中,叫做數(shù)據(jù)中數(shù)據(jù)表一般應當包含在數(shù)據(jù)庫中,叫做數(shù)據(jù)

24、庫表庫表(簡稱庫表簡稱庫表);但是也可以獨立存在,叫做自由表。;但是也可以獨立存在,叫做自由表。數(shù)據(jù)庫邏輯數(shù)據(jù)模型的一個關系對應了數(shù)據(jù)庫邏輯數(shù)據(jù)模型的一個關系對應了VFP軟件中的一個表,關系軟件中的一個表,關系的屬性對應了表的字段,關系框架對應了表結構,關系元組對應了表記的屬性對應了表的字段,關系框架對應了表結構,關系元組對應了表記錄。錄。1.建立數(shù)據(jù)表結構建立數(shù)據(jù)表結構(1) 設計數(shù)據(jù)表。在利用 VFP創(chuàng)建一個新的數(shù)據(jù)表文件以前,應當根據(jù)邏輯模型和數(shù)據(jù)字典先分析和設計數(shù)據(jù)表。需要確定數(shù)據(jù)表名稱,所含字段名稱、類型、寬度以及應當建立的索引字段等。為了便于操作使用,應當考慮下面幾點:1、必須有表

25、文件名,假定為BUMEN.DBF(數(shù)據(jù)表的擴展名為.dbf)2.各字段要有惟一名稱,我們用拼音表示。3.根據(jù)各字段值決定其數(shù)據(jù)類型及寬度。 (2) 創(chuàng)建數(shù)據(jù)表。在 VFP的主窗口,單擊工具欄“新建” 按鈕,打開“新建” 對話框。在文件類型框中選定“表”選項,單擊“新建” 按鈕,打開“創(chuàng)建” 新文件的對話框。 在表設計器中我們已經可逐次鍵入字段名、類型、寬度及小數(shù)位數(shù)的信息。 字段名就當由不超過10個字符(5個漢字)組成。NULL含義(2005.4,單選單選21)VisualFoxPro自由表中字段名的字符數(shù)最多不超過( )A.8個 B.10個 C.16個 D.24個v應用舉例:(09年年1月應

26、用題月應用題42題題)在Visual FoxPro中,使用表設計器創(chuàng)建“職工人事檔案”數(shù)據(jù)表的結構(如題42表所示)。(字段的寬度以題42表為準,不考慮預留寬度。)v請將表設計器的設置結果填寫在下表中,不需要設定的項目請用“”表示擴展名擴展名文件類型文件類型擴展名擴展名文件類型文件類型.DBF表表.FRX報表報表.FPT表備注表備注.FRT報表備注報表備注.DBC數(shù)據(jù)庫數(shù)據(jù)庫.LBX標簽標簽.DCT數(shù)據(jù)庫備注數(shù)據(jù)庫備注.LBT標簽備注標簽備注.DCX數(shù)據(jù)庫索引數(shù)據(jù)庫索引.MNX菜單菜單.PJX項目項目.MNT菜單備注菜單備注.PJT項目備注項目備注.MPR生成的菜單程序生成的菜單程序.PRG程

27、序程序.MPX編譯后的菜單程序編譯后的菜單程序.FXP編譯后的程序編譯后的程序.QPR生成的查詢程序生成的查詢程序.IDX單索引單索引.QPX編譯后的查詢程序編譯后的查詢程序.CDX復合索引復合索引.VUE視圖文件視圖文件.SCX表單表單.APP生成的應用程序生成的應用程序.SCT表單備注表單備注.TXT文本文件文本文件.SPR源程序文件源程序文件.EXE可執(zhí)行程序可執(zhí)行程序.SPX目標程序文件目標程序文件.FRT格式文件格式文件.MEM內存變量文件內存變量文件.BAK備份文件備份文件VFP常用文件類型 2.數(shù)據(jù)表記錄的輸入數(shù)據(jù)表記錄的輸入v 在創(chuàng)建數(shù)據(jù)表時可以根據(jù)系統(tǒng)提示直接輸入記錄,但是也

28、可以暫時不輸入記錄。沒有記錄只有結構的數(shù)據(jù)表叫做空表。 文件有兩種打開方式,“以只讀方式打開” 的文件是不能編輯修改的。因為不需要“共享”數(shù)據(jù),我們選擇用“獨占” 方式打開文件。單擊“確定”按鈕后數(shù)據(jù)表文件被打開。 (3) 追加記錄。首先在主菜單的“顯示”下拉菜單中,單擊“劉覽”選項,打開表的瀏覽窗口。 追加一條記錄。連續(xù)追加。成組追加。v(2004.10,單選單選26)要在數(shù)據(jù)表瀏覽窗口中連續(xù)輸入新記錄,應當()A在顯示下拉菜單中單擊“追加方式”選項B在表下拉菜單中單擊“追加新記錄”選項C在表下拉菜單中單擊“追加記錄”選項D敲快捷鍵Ctrl+Yv3.瀏覽數(shù)據(jù)表記錄6.3.2建立建立VFP的數(shù)

29、據(jù)庫的數(shù)據(jù)庫v 前面建立的表都是自由表,而實際上一個應用系統(tǒng)總是由多個相關表構成的.要在多個自由表之間建立聯(lián)系,必須通過數(shù)據(jù)庫來實現(xiàn).v 數(shù)據(jù)庫本身是不存儲數(shù)據(jù)的,它只存儲表、視圖及它們之間的關系等。在數(shù)據(jù)庫中的表叫做數(shù)據(jù)庫表,數(shù)據(jù)庫為數(shù)據(jù)表提供了數(shù)據(jù)字典、各種數(shù)據(jù)保護和數(shù)據(jù)管理功能,所以數(shù)據(jù)庫表比自由表要完善得多。一個數(shù)據(jù)庫是由數(shù)據(jù)庫文件(.DBC)、數(shù)據(jù)庫備注文件(.DCT)和數(shù)據(jù)庫索引文件(.DCX)三類文件組成.v(2004.10,單選單選27)數(shù)據(jù)庫備注文件的擴展名是()A.DOCB.DBCC.DCTD.DCXv1、建立數(shù)據(jù)庫文件v2、創(chuàng)建數(shù)據(jù)庫表v可以直接在數(shù)據(jù)庫中建立數(shù)據(jù)表,也可

30、以將自由表添加到數(shù)據(jù)庫中,但是不能將另一個數(shù)據(jù)庫中的表拉到當前數(shù)據(jù)庫來??梢栽谕粋€數(shù)據(jù)庫中建立多個表。v (1)添加數(shù)據(jù)表。打開選定數(shù)據(jù)庫的“數(shù)據(jù)庫設計器”窗口,在“數(shù)據(jù)庫設計器”工具欄中,單擊“添加表”選項,將會彈出“打開”窗口,選擇要添加的表后,單擊“確定”按鈕,就可以把一個自由表添加到當前數(shù)據(jù)庫中,并將自由表變成數(shù)據(jù)庫表。v (2)創(chuàng)建數(shù)據(jù)庫表。也可以在數(shù)據(jù)庫設計器中直接創(chuàng)建數(shù)據(jù)表。首先單擊“數(shù)據(jù)庫設計器”工具欄的“新建表”按鈕,然后在對話框中單擊“新建表”按鈕,將打開數(shù)據(jù)庫“表設計器”。v 數(shù)據(jù)庫表添加或創(chuàng)建完成以后,關閉數(shù)據(jù)庫設計器窗口。包含了數(shù)據(jù)表的數(shù)據(jù)庫文件就保存在外存儲器中。

31、v 3、數(shù)據(jù)庫文件的打開與關閉v (1)數(shù)據(jù)庫文件的打開。一般通過單擊主菜單”文件”下拉菜單的“打開”功能。在彈出的“打開”對話框窗口選定數(shù)據(jù)庫文件后,單擊“打開”按鈕打開。v 在打開一個數(shù)據(jù)庫表的時候,系統(tǒng)也會自動先打開其數(shù)據(jù)庫文件,然后再打開選定的表。v (2)數(shù)據(jù)庫文件的關閉。除了可以通過像關閉其他Windows窗口一樣,關閉“數(shù)據(jù)庫設計器”窗口來關閉當前數(shù)據(jù)庫以外,還可以使用專門的命令來關閉數(shù)據(jù)庫。6.3.3設置數(shù)據(jù)表的索引設置數(shù)據(jù)表的索引v 1、索引表和索引文件用戶對數(shù)據(jù)表常常會有不同的需求,為了加快數(shù)據(jù)的檢索、顯示、查詢的打印速度,就需要對文件中的記錄順序進行重組。實現(xiàn)的方法一般有

32、兩種:一種叫做排序;另一種叫做索引。排序的作用是按指定字段或字段組中數(shù)據(jù)值的大小順序,以遞增(升序)或遞減(降序)方式重新排列全部數(shù)據(jù)記錄,并生成一個新的數(shù)據(jù)表文件。v索引不建立一個新的數(shù)據(jù)表文件,只是按照給定字段表達式值的大小,生成一個索引表,并使數(shù)據(jù)表中的記錄按索引表的要求以遞增(升序)或遞減(降序)順序顯示。v索引技術除可以重新排列數(shù)據(jù)表記錄的前后順序外,在建立數(shù)據(jù)表間的關聯(lián)時,或者利用SQL語言建立查詢、視圖時,都必須靠索引技術來支持。v (2004.10,簡答,簡答49)試比較排序與索引的異同。排序的作用是按指定字段或字段組中數(shù)據(jù)值的大小順序,以遞增(升序)或遞減(降序)方式重新排列

33、全部數(shù)據(jù)記錄,并生成一個新的數(shù)據(jù)表文件。索引不建立一個新的數(shù)據(jù)表文件,只是按照給定字段表達式的大小,生成一個索引表,并使數(shù)據(jù)表中的記錄按索引表的要求以遞增(升序)或遞減(降序)順序顯示。在VF系統(tǒng)中,可以為一個數(shù)據(jù)表建立多個不同的索引文件,每個索引文件都能確定一種邏輯順序。在VF系統(tǒng)中主要使用結構復合索引文件,它的擴展名是。CDX。(2005.10,單選,單選15)可以為一個表創(chuàng)建的索引數(shù)是()A.1 個B.10個C.與字段數(shù)相同D.任意個2.索引關鍵字的類型索引關鍵字:是由一個或若干個字段構成的索引表達式.索引表達式的類型決定了不同的索引方式.VFP系統(tǒng)提供了四種不同的類型,它們分別是主索引

34、、候選索引、普通索引和惟一索引。(1)主索引。主索引是能夠惟一地確定數(shù)據(jù)表中一條記錄的字段或字段組合表達式;要求該字段或字段組合表達式的值,在數(shù)據(jù)表的全部記錄中都不能出現(xiàn)重復。主索引只能在數(shù)據(jù)庫表中使用,而且一個數(shù)據(jù)表只能指定一個主索引。表的主索引就相當于關系的主碼。(2)候選索引。候選索引像主索引一樣,是能夠惟一地確定數(shù)據(jù)表中一條記錄的字段或字段組合表達式。但是,一個數(shù)據(jù)表允許建立多個候選索引,可以在數(shù)據(jù)庫表或自由表中創(chuàng)建候選索引。如果將一個包含了重復數(shù)據(jù)的字段指定為候選索引,系統(tǒng)會返回一個出錯信息,并禁止創(chuàng)建該索引。表的候選索引相當于關系的候選碼。(3)普通索引。普通索引允許數(shù)據(jù)表中各記錄

35、的索引字段或字段組合表達式的值相同,而且既允許在數(shù)據(jù)庫表中創(chuàng)建,也允許在自由表中創(chuàng)建。(4)唯一索引。唯一索引是VFP為保持與低版本軟件的兼容性而保留的一種索引類型,一般情況下很少使用。它允許數(shù)據(jù)表中各記錄的索引字段,或字段組合表達式的值相同,但是在索引表中只保留數(shù)據(jù)表中與索引字體值相同的第一條記錄。3、創(chuàng)建索引文件可以使用命令建立索引文件,但是利用表設計器創(chuàng)建索引文件更加直觀、方便。結構復合索引文件可以在創(chuàng)建數(shù)據(jù)表時建立,也可以對已經建立好的數(shù)據(jù)表創(chuàng)建或修改索引。4、索引的操作(1)打開與關閉。要使用索引,必須先要打開索引。結構復合索引總是隨著數(shù)據(jù)表打開,一旦數(shù)據(jù)表文件關閉,相應的索引文件也

36、就自動關閉了。(2)確定主索引。結構復合索引打開后,其中的索引標識(Tag)并不起作用,數(shù)據(jù)表記錄順序仍然保持著原始自然排列。必須執(zhí)行確定主索引的操作后,數(shù)據(jù)表記錄的排列才會跟著變化。在程序中常常使用命令方式確定當前主索引。(3)刪除索引標識。要刪除結構復合索引文件中的索引標識,應當打開數(shù)據(jù)表文件,并打開其表設計器對話框。在“索引”頁卡中選定要刪除的索引標識后,單擊“刪除”按鈕刪除。6.3.4創(chuàng)建數(shù)據(jù)表之間的關聯(lián)創(chuàng)建數(shù)據(jù)表之間的關聯(lián)對于數(shù)據(jù)庫中各相關數(shù)據(jù)表之間的聯(lián)系必須通過建立關聯(lián)來實現(xiàn)。6.3.5創(chuàng)建視圖創(chuàng)建視圖在數(shù)據(jù)庫的概念結構設計中,用戶的局部概念模式是全局概念模式的子集,叫做用戶模式、

37、外模式,它是從用戶的觀點看到的數(shù)據(jù)庫,所以也叫做用戶視圖。在VFP中,視圖是數(shù)據(jù)庫的一個部分,分為本地視圖和遠程視圖兩類。本地視圖是利用本地數(shù)據(jù)庫表、自由表及其他視圖建立在本地服務器上視圖。遠程視圖是利用遠程服務器中的數(shù)據(jù)建立的視圖。視圖也以文件的形式保存在存儲器中。文件擴展名為.VUE。視圖是一種特殊類型的數(shù)據(jù)表,它往往由一個或多個表(或視圖)中的部分字段或部分記錄組成。雖然從用戶的角度看,視圖也像數(shù)據(jù)表一樣有自己的名字,相應的字段、記錄,具備了一般數(shù)據(jù)表的特征,可是在實際存儲器中并沒有這要的數(shù)據(jù)實體;在數(shù)據(jù)庫中僅存放了與關聯(lián)數(shù)據(jù)表相應的連接的操作要求。所以該視圖可稱為“虛表”或邏輯表。v

38、一般建立視圖的目的有三個:數(shù)據(jù)庫系統(tǒng)是供多用戶使用的,不同的用戶只能查看與自己相關的一部分數(shù)據(jù),以保障數(shù)據(jù)的安全和完整。視圖可以為每個用戶建立自己的數(shù)據(jù)集合。為了保證數(shù)據(jù)表具有較高的范式,往往將一個數(shù)據(jù)集合分解成多個相關的數(shù)據(jù)表。而在使用多個表的數(shù)據(jù)時,將各表中有用的數(shù)據(jù)集中到一個視圖是最方便的辦法。簡化對數(shù)據(jù)庫的操作管理。只要事先將各表中相關數(shù)據(jù)項集中放在一個視圖中,通過視圖就可以同時更新各表中的數(shù)據(jù)。創(chuàng)建視圖(1)創(chuàng)建單表視圖(2)創(chuàng)建多表視圖例例:2010年真題年真題在Visual FoxPro中,利用數(shù)據(jù)庫“固定資產”中的數(shù)據(jù)表“設備”如題42(1)表和數(shù)據(jù)表“使用”如題42(2)表創(chuàng)

39、建視圖“折舊”如題42(3)表,該視圖包括 “設備名稱”、“設備編號”、“價格”、“現(xiàn)值”四個字段。(1)請分析用兩個數(shù)據(jù)表(比如“設備”和“使用”)建立視圖的先決條件;(2分)(2)要創(chuàng)建如題42(3)表所示的視圖“折舊”,應以哪個字段建立兩表的關聯(lián),并分析原因;(4分)(3)歸納利用視圖設計器建立多表視圖的步驟。(4分)6.4代碼設計代碼設計代碼是計算機和人都容易理解的符號(或語言),能夠實現(xiàn)人和計算機的溝通。代碼的重要性表現(xiàn)在以下幾個方面。(2005.10,簡答46)試述代碼的重要性。(1)可以惟一地標識一個分類對象(實體)。(2)加快輸入,減少出錯,便于存儲和檢索,節(jié)省存儲空間。(3)使數(shù)據(jù)的表達規(guī)范化,簡化處理程序,提高處理效率。(4)代碼也叫信息編碼,是作為事物(實體)惟一標識、一組有序字符組合。它必須便于計算機和人識別、處理。6.4.1代碼設計方法代碼設計方法1、代碼設計的原則(2007.10,簡答38簡述代碼設計的原則)(1) 惟一性:是區(qū)別系統(tǒng)中每個實體或屬性的惟一標識。(2)簡單性:盡量壓縮代碼長度,可降低出錯機會。(3)易識別性:為便于記憶、減少出錯,代碼應當邏輯性強,表意明確。(4)可擴充性:不需要變動原代碼體系,可直接追加新代碼,以適應系統(tǒng)發(fā)展。(5)合理性:必須在邏輯上滿足應用需要,在結構上與處理方法相一

溫馨提示

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

評論

0/150

提交評論