第9章 數(shù)據(jù)應(yīng)用系統(tǒng)設(shè)計與開發(fā)_第1頁
第9章 數(shù)據(jù)應(yīng)用系統(tǒng)設(shè)計與開發(fā)_第2頁
第9章 數(shù)據(jù)應(yīng)用系統(tǒng)設(shè)計與開發(fā)_第3頁
第9章 數(shù)據(jù)應(yīng)用系統(tǒng)設(shè)計與開發(fā)_第4頁
第9章 數(shù)據(jù)應(yīng)用系統(tǒng)設(shè)計與開發(fā)_第5頁
已閱讀5頁,還剩54頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1Access數(shù)據(jù)庫技術(shù)及應(yīng)用講授單位:計算機與通信學(xué)院2第9章數(shù)據(jù)應(yīng)用系統(tǒng)

設(shè)計與開發(fā)《Access數(shù)據(jù)庫技術(shù)及應(yīng)用》3學(xué)習(xí)目標(biāo):掌握數(shù)據(jù)庫應(yīng)用系統(tǒng)的開發(fā)方法。掌握數(shù)據(jù)庫設(shè)計的方法綜合應(yīng)用Access對象

目錄一種多方互動式學(xué)教系統(tǒng)(發(fā)明專利)9.1應(yīng)用系統(tǒng)開發(fā)概述一種多方互動式學(xué)教系統(tǒng)(發(fā)明專利)9.2系統(tǒng)功能概述一種多方互動式學(xué)教系統(tǒng)(發(fā)明專利)9.5本章小結(jié)9.3數(shù)據(jù)庫設(shè)計9.4主要功能模塊設(shè)計

9.1應(yīng)用系統(tǒng)開發(fā)概述9.1應(yīng)用系統(tǒng)開發(fā)概述

結(jié)構(gòu)化系統(tǒng)開發(fā)方法(StructuredSystemDevelopmentMethodology)是目前應(yīng)用得最普遍的一種開發(fā)方法。

用結(jié)構(gòu)化系統(tǒng)開發(fā)方法開發(fā)一個系統(tǒng),要經(jīng)過系統(tǒng)分析、系統(tǒng)設(shè)計、系統(tǒng)實施和系統(tǒng)維護幾個不同的階段。系統(tǒng)分析階段對相關(guān)信息進行收集,確定該數(shù)據(jù)庫應(yīng)用系統(tǒng)的總需求目標(biāo)、開發(fā)的總思路及開發(fā)所需要的時間。分析業(yè)務(wù)流程、分析數(shù)據(jù)與數(shù)據(jù)流程、分析功能與數(shù)據(jù)之間的關(guān)系。提出分析處理方式和系統(tǒng)邏輯方案。即明確目標(biāo)到底要“做什么”。9.1應(yīng)用系統(tǒng)開發(fā)概述系統(tǒng)設(shè)計階段根據(jù)目標(biāo)系統(tǒng)的邏輯模型確定目標(biāo)系統(tǒng)的物理模型。包括總體設(shè)計和詳細設(shè)計。

即解決目標(biāo)系統(tǒng)“怎么做”的問題。9.1應(yīng)用系統(tǒng)開發(fā)概述系統(tǒng)設(shè)計階段總體設(shè)計是首要任務(wù),是對數(shù)據(jù)庫應(yīng)用系統(tǒng)在全局性把握的基礎(chǔ)上進行全面的總體規(guī)劃。詳細設(shè)計是對每一個模塊的設(shè)計,目的是確定模塊內(nèi)部的過程結(jié)構(gòu),特別是要明確數(shù)據(jù)的輸入、輸出的要求等。9.1應(yīng)用系統(tǒng)開發(fā)概述系統(tǒng)實施階段按系統(tǒng)功能模塊的設(shè)計方案,具體實施系統(tǒng)的逐級控制和建立獨立模塊,從而建立一個完整的應(yīng)用開發(fā)系統(tǒng)。按系統(tǒng)論的思想,把數(shù)據(jù)庫應(yīng)用系統(tǒng)視為一個大的系統(tǒng),將這個大系統(tǒng)再分為若干相對獨立的系統(tǒng),保證高級控制程序能夠控制各個子功能模塊功能的實現(xiàn)。9.1應(yīng)用系統(tǒng)開發(fā)概述系統(tǒng)維護階段系統(tǒng)的日常運行管理、系統(tǒng)評價、系統(tǒng)維護三個方面。在系統(tǒng)維護方面,測試數(shù)據(jù)庫應(yīng)用系統(tǒng)的性能尤為關(guān)鍵,不僅要通過調(diào)用工具檢查和調(diào)試數(shù)據(jù)庫應(yīng)用系統(tǒng),還要通過模擬實際操作或?qū)嶋H驗證數(shù)據(jù)庫應(yīng)用系統(tǒng),若出現(xiàn)錯誤或有不適當(dāng)?shù)牡胤剑皶r加以修正,或增加新的性能。9.1應(yīng)用系統(tǒng)開發(fā)概述

9.2系統(tǒng)功能目標(biāo)以“學(xué)生成績管理系統(tǒng)”為案例闡述數(shù)據(jù)庫應(yīng)用系統(tǒng)的開發(fā)過程。數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)的一般過程,其核心內(nèi)容是設(shè)計數(shù)據(jù)庫應(yīng)用系統(tǒng)的邏輯模型或規(guī)劃模型,這是數(shù)據(jù)庫系統(tǒng)設(shè)計過程的第一步。而這種規(guī)劃性設(shè)計的核心內(nèi)容是要規(guī)劃好系統(tǒng)的主控模塊和若干主要功能模塊的規(guī)劃方案,這是整個數(shù)據(jù)庫應(yīng)用系統(tǒng)設(shè)計開發(fā)的關(guān)鍵。9.2系統(tǒng)功能目標(biāo)9.2系統(tǒng)功能目標(biāo)9.3數(shù)據(jù)庫設(shè)計9.3數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫規(guī)劃與設(shè)計是數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)的關(guān)鍵問題與核心技術(shù)。它是決定數(shù)據(jù)庫應(yīng)用系統(tǒng)好壞的關(guān)鍵因素之一。如果數(shù)據(jù)庫中的數(shù)據(jù)量不大,而且數(shù)據(jù)的邏輯關(guān)系比較簡單,則數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計比較容易,編輯修改也比較方便;相反,如果數(shù)據(jù)庫內(nèi)容龐雜、關(guān)系復(fù)雜,編輯修改將很困難。特別是如果在使用中發(fā)現(xiàn)問題而不得不回過頭修改就有可能丟失數(shù)據(jù)。9.3.1數(shù)據(jù)庫設(shè)計步驟1.需求分析需求分析階段是數(shù)據(jù)庫設(shè)計的基礎(chǔ),是數(shù)據(jù)庫設(shè)計的第一步。這個階段的主要任務(wù)是對數(shù)據(jù)庫應(yīng)用系統(tǒng)所要處理的對象進行全面了解,大量收集支持目標(biāo)實現(xiàn)的各類基礎(chǔ)數(shù)據(jù),以及用戶對數(shù)據(jù)庫信息的需求、對基礎(chǔ)數(shù)據(jù)進行加工處理的需求、對數(shù)據(jù)安全性和完整性的要求。9.3.1數(shù)據(jù)庫設(shè)計步驟2.概念結(jié)構(gòu)設(shè)計概念結(jié)構(gòu)設(shè)計是整個數(shù)據(jù)庫設(shè)計的關(guān)鍵,是對現(xiàn)實世界的第一層面的抽象和模擬,最終設(shè)計出描述現(xiàn)實世界且獨立于具體DBMS的概念模型。設(shè)計概念模型常用的方法是E-R方法,即建立E-R模型(實體-關(guān)系)模型。9.3.1數(shù)據(jù)庫設(shè)計步驟3.邏輯結(jié)構(gòu)設(shè)計邏輯結(jié)構(gòu)設(shè)計是根據(jù)已設(shè)計好的概念模型(E-R模型),將其轉(zhuǎn)換為與DBMS支持的數(shù)據(jù)模型相符的邏輯結(jié)構(gòu)。在關(guān)系模型中,要設(shè)計優(yōu)良的符合邏輯的數(shù)據(jù)庫邏輯結(jié)構(gòu)就需要知道關(guān)系的規(guī)范化和完整性約束。9.3.1數(shù)據(jù)庫設(shè)計步驟3.邏輯結(jié)構(gòu)設(shè)計(1)關(guān)系規(guī)范化關(guān)系規(guī)范化理論認為,關(guān)系數(shù)據(jù)庫中的每一個關(guān)系都要滿足一定的規(guī)范。根據(jù)滿足規(guī)范的條件不同,可以劃分為六個等級五個范式。9.3.1數(shù)據(jù)庫設(shè)計步驟3.邏輯結(jié)構(gòu)設(shè)計(1)關(guān)系規(guī)范化第一范式(1NF),NF是NormalForm的縮寫。表中都是不可再分的基本字段(1NF)。例如,假設(shè)“學(xué)生”表中要存儲一個學(xué)生的成績,可設(shè)置“分數(shù)”字段。但成績?nèi)绻€有考試成績、平時成績等時,而且成績一般與課程是相關(guān)的,就要分別設(shè)置相應(yīng)的字段。這樣造成數(shù)據(jù)冗余,就可考慮再創(chuàng)建一個新表,專門存放成績相關(guān)數(shù)據(jù)。9.3.1數(shù)據(jù)庫設(shè)計步驟3.邏輯結(jié)構(gòu)設(shè)計(1)關(guān)系規(guī)范化第二范式(2NF)表中所有字段都必須依賴于主鍵。一個表只存儲一種實體對象。例如,在建立“學(xué)生”表時,不能把“教師”、“課程”的數(shù)據(jù)放在同一個表中。9.3.1數(shù)據(jù)庫設(shè)計步驟3.邏輯結(jié)構(gòu)設(shè)計(1)關(guān)系規(guī)范化第三范式(3NF)表中每個記錄的所有字段都是唯一的且不互相依賴。例如,“學(xué)生”表中已有“出生年月”字段,就可以不要“年齡”字段。。9.3.1數(shù)據(jù)庫設(shè)計步驟3.邏輯結(jié)構(gòu)設(shè)計(1)關(guān)系規(guī)范化高度規(guī)范化的數(shù)據(jù)庫固然有結(jié)構(gòu)清晰、操作不易出錯等各種優(yōu)點,但相關(guān)表之間大量的連接在執(zhí)行查詢等操作時都需要耗費大量資源,所以,并非規(guī)范化程度越高效果就越好。在設(shè)計數(shù)據(jù)庫時,需要具體情況具體分析,權(quán)衡利弊,再進行決策。9.3.1數(shù)據(jù)庫設(shè)計步驟3.邏輯結(jié)構(gòu)設(shè)計(2)關(guān)系模型的完整性約束關(guān)系完整性約束是對要建立關(guān)聯(lián)關(guān)系的兩個關(guān)系的主鍵和外鍵設(shè)置約束條件,即約束兩個關(guān)聯(lián)關(guān)系之間的有關(guān)刪除、更新、插入操作,約束它們實現(xiàn)關(guān)聯(lián)操作,或限制關(guān)聯(lián)操作,或忽略關(guān)聯(lián)操作。關(guān)系模型提供了三種完整性約束:用戶自定義完整性、實體完整性、參照完整性。9.3.1數(shù)據(jù)庫設(shè)計步驟3.邏輯結(jié)構(gòu)設(shè)計(2)關(guān)系模型的完整性約束用戶自定義完整性約束是用戶自行定義的刪除約束、更新約束、插入約束。例如,在對“學(xué)生”關(guān)系進行插入數(shù)據(jù)操作時,限制學(xué)號、姓名不能為NULL。9.3.1數(shù)據(jù)庫設(shè)計步驟3.邏輯結(jié)構(gòu)設(shè)計(2)關(guān)系模型的完整性約束實體完整性是對關(guān)系中元組的唯一性約束,也就是對組成主鍵的屬性的約束,即關(guān)系中組成主鍵的屬性不能是空值(Null)。例如,在“學(xué)生”關(guān)系中,若“學(xué)號”為主鍵,則設(shè)置“學(xué)號”屬性對應(yīng)的屬性域不能為Null(空),而且屬性值不能重復(fù)。9.3.1數(shù)據(jù)庫設(shè)計步驟3.邏輯結(jié)構(gòu)設(shè)計(2)關(guān)系模型的完整性約束參照完整性是輸入或刪除記錄時,為維持表之間已定義的關(guān)系而必須遵循的一個規(guī)則。系統(tǒng)如果實施了參照完整性,則當(dāng)用戶不小心要將與基本表無關(guān)的記錄加入相關(guān)表時,Access會提出警告。如果要從基本表中刪除記錄,而該記錄在相關(guān)表中也有對應(yīng)記錄。則Access還會防止用戶刪除該記錄。9.3.1數(shù)據(jù)庫設(shè)計步驟3.邏輯結(jié)構(gòu)設(shè)計(3)E-R模型與關(guān)系模型的轉(zhuǎn)換E-R模型轉(zhuǎn)換成關(guān)系模型,就是將實體型和實體型間的聯(lián)系轉(zhuǎn)換為關(guān)系模式,確定關(guān)系模式的屬性和碼,轉(zhuǎn)換過程中要做到不違背關(guān)系的完整性約束,盡量滿足規(guī)范化原則。9.3.1數(shù)據(jù)庫設(shè)計步驟3.邏輯結(jié)構(gòu)設(shè)計(3)E-R模型與關(guān)系模型的轉(zhuǎn)換將E-R圖轉(zhuǎn)換為關(guān)系模型一般遵循如下原則:①一個實體型轉(zhuǎn)換為一個關(guān)系模式。②實體的屬性就是關(guān)系的屬性,實體的碼就是關(guān)系的碼。9.3.1數(shù)據(jù)庫設(shè)計步驟3.邏輯結(jié)構(gòu)設(shè)計(3)E-R模型與關(guān)系模型的轉(zhuǎn)換③一個1∶1聯(lián)系可以轉(zhuǎn)換為一個獨立的關(guān)系模式,也可以與任意一端對應(yīng)的關(guān)系模式合并。如果轉(zhuǎn)換為一個獨立的關(guān)系模式,則與該聯(lián)系相連的各實體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,每個實體的碼均是該關(guān)系的候選碼。如果與某一端實體對應(yīng)的關(guān)系模式合并,則需要在該關(guān)系模式的屬性中加入另一個關(guān)系模式的碼和聯(lián)系本身的屬性。9.3.1數(shù)據(jù)庫設(shè)計步驟3.邏輯結(jié)構(gòu)設(shè)計(3)E-R模型與關(guān)系模型的轉(zhuǎn)換④一個1∶n聯(lián)系可以轉(zhuǎn)換為一個獨立的關(guān)系模式,也可以與n端對應(yīng)的關(guān)系模式合并。如果轉(zhuǎn)換為一個獨立的關(guān)系模式,則與該聯(lián)系相連的各實體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,而關(guān)系的碼為n端實體的碼。9.3.1數(shù)據(jù)庫設(shè)計步驟3.邏輯結(jié)構(gòu)設(shè)計(3)E-R模型與關(guān)系模型的轉(zhuǎn)換⑤一個m∶n聯(lián)系轉(zhuǎn)換為一個關(guān)系模式。與該聯(lián)系相連的各實體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,而關(guān)系的碼為各實體碼的組合。⑥三個或三個以上實體間的一個多元聯(lián)系可以轉(zhuǎn)換為一個關(guān)系模式。與該多元聯(lián)系相連的各實體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,而關(guān)系的碼為各實體碼的組合。⑦具有相同碼的關(guān)系模式可合并。9.3.1數(shù)據(jù)庫設(shè)計步驟4.物理結(jié)構(gòu)設(shè)計數(shù)據(jù)庫物理結(jié)構(gòu)設(shè)計就是為設(shè)計好的邏輯數(shù)據(jù)模型選擇適合的應(yīng)用環(huán)境。在Access數(shù)據(jù)庫中,可以使用Access分析工具幫助改進數(shù)據(jù)庫的設(shè)計。Access提供了兩個工具:表分析器向?qū)В阅芊治銎鳌?.3.2學(xué)生成績管理系統(tǒng)數(shù)據(jù)庫設(shè)計表9-1StudentInfo表字段名稱數(shù)據(jù)類型字段大小描

述StudentXH文本20學(xué)號(主鍵)StudentName文本10姓名ClassNo文本9班級編號(外鍵)Sex文本2性別Telephone文本20電話號碼Email文本50電子郵箱PhotographOLE對象照片Members是/否黨員否9.3.2學(xué)生成績管理系統(tǒng)數(shù)據(jù)庫設(shè)計表9-2TeacherInfo表字段名稱數(shù)據(jù)類型字段大小描

述TeacherNo文本10教師編號(主鍵)TeacherName文本10姓名Sex文本2性別DepNo文本2院系編號(外鍵)Telephone文本20電話號碼Email文本50電子郵箱9.3.2學(xué)生成績管理系統(tǒng)數(shù)據(jù)庫設(shè)計表9-3CourseInfo表字段名稱數(shù)據(jù)類型字段大小描

述CourseNo文本20課程編號(主鍵)CourseName文本10課程名稱DepNo文本2院系編號(外鍵)ExpStuTime數(shù)字整型學(xué)時Credits文本20學(xué)分TeacherNo文本10任課教師編號(外鍵)9.3.2學(xué)生成績管理系統(tǒng)數(shù)據(jù)庫設(shè)計表9-4StudentCJ表字段名稱數(shù)據(jù)類型字段大小描

述StudentXH文本20學(xué)號(主鍵)CourseNo文本8課程編號(主鍵)TestScore數(shù)字雙精度考試成績UsualScore數(shù)字雙精度平時成績TotalMark數(shù)字雙精度總成績9.3.2學(xué)生成績管理系統(tǒng)數(shù)據(jù)庫設(shè)計表9-5ClassInfo表字段名稱數(shù)據(jù)類型字段大小描

述ClassNo文本9班級編號(主鍵)DepNo文本2院系編號(外鍵)ClassName文本30班級名稱9.3.2學(xué)生成績管理系統(tǒng)數(shù)據(jù)庫設(shè)計表9-6Departments表字段名稱數(shù)據(jù)類型字段大小描

述DepNo文本2院系編號(主鍵)Department文本50院系名稱9.3.2學(xué)生成績管理系統(tǒng)數(shù)據(jù)庫設(shè)計表9-7UserInfo表字段名稱數(shù)據(jù)類型字段大小描

述UserName文本10用戶名(主鍵)Password文本2密碼9.3.2學(xué)生成績管理系統(tǒng)數(shù)據(jù)庫設(shè)計表之間的關(guān)系

9.4主要功能模塊設(shè)計9.4主要功能模塊設(shè)計

9.4.1登陸窗體設(shè)計系統(tǒng)登陸窗體是用來讓操作人員輸入用戶名和系統(tǒng)口令的窗口,通過登陸窗口才可以進入系統(tǒng)?!俺煽児芾硐到y(tǒng)”登陸窗體如圖9-3所示。

9.4.2基本信息管理模塊設(shè)計

“學(xué)生信息管理”窗體能實現(xiàn)數(shù)據(jù)的簡單查詢、添加、刪除及修改功能,如圖9-4所示。

9.4.3成績管理模塊設(shè)計設(shè)計一個“學(xué)生成績錄入”窗體,按學(xué)生班級、課程對學(xué)生成績進行錄入,窗體視圖如圖9-7所示9.4.4成績查詢窗體設(shè)計成績查詢界面提供按姓名、班級名、課程名等多條件進行成績查詢。各條件之間是邏輯或的關(guān)系,如圖9-8所示。9.4.5成績分布統(tǒng)計設(shè)計成績分布統(tǒng)計界面主要功能是按班級名稱和課程名稱統(tǒng)計出各分數(shù)段的人數(shù),并計算優(yōu)秀率和不及格率。兩條件之間是邏輯“與”的關(guān)系,如圖9-11所示。9.4.6報表設(shè)計“學(xué)生信息”報表按班級分組顯示學(xué)生的學(xué)號、姓名、性別、電話號碼、E-mail等信息。當(dāng)學(xué)生輔導(dǎo)員需要了解班上學(xué)生的聯(lián)系方式等基本情況時,這個報表就發(fā)揮作用了。9.4.6報表設(shè)計以“成績查詢”做數(shù)據(jù)源,用報表向?qū)У姆椒▉韯?chuàng)建“成績單”報表。然后再設(shè)置計算總分的平均分和計算參加考試人數(shù)的功能。成績單報表設(shè)計視圖如下。9.4.7主控面板的設(shè)計主控面板是整個系統(tǒng)的入口,它主要起功能導(dǎo)航的作用。系統(tǒng)中各個功能模塊在主控面板中都建立鏈接,當(dāng)用戶單擊該窗體中按鈕時,即可進入相應(yīng)的功能模塊。主控面板的設(shè)計有多種方法。9.4.7主控面板的設(shè)計自定義窗體來設(shè)計主控面板設(shè)計思想是:對窗體上的按鈕設(shè)置相應(yīng)的“單擊”事件,事件功能是打開對應(yīng)的功能模塊窗體。事件可以用“宏”或VBA代碼進行設(shè)置,宏可以用“OpenForm”命令來打開相應(yīng)的窗體。9.4.7主控面板的設(shè)計2.使用Access的“切換面板管理器”3.用宏命令設(shè)置菜單9.4.8設(shè)置自動啟動窗體通過Access設(shè)置自動啟動窗體

溫馨提示

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

評論

0/150

提交評論