版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、高校成績管理系統(tǒng)數(shù)據(jù)庫設計與實現(xiàn)班級 計科1201 學號 2012261001XX 姓名 XXX 目錄:-1.需求分析1.1數(shù)據(jù)需求描述1.2 系統(tǒng)功能需求 1.3 其他性能需求-2.概念結(jié)構(gòu)設計2.1畫出局部E-R圖;2.2合并成全局E-R圖;-3.邏輯結(jié)構(gòu)設計3.1 關(guān)系模式設計3.2 數(shù)據(jù)類型定義-4.物理結(jié)構(gòu)設計4.1 聚簇設計4.2 索引設計4.3 分區(qū)設計-5.數(shù)據(jù)庫實施5.1 基本表建立5.2 數(shù)據(jù)輸入5.3 視圖的建立5.4 索引的建立5.5 觸發(fā)器建立 5.6 建存儲過程-6.應用系統(tǒng)開發(fā)與試運行6.1 開發(fā)平臺和開發(fā)環(huán)境介紹。6.2 前臺界面與后臺數(shù)據(jù)庫連接說明,代碼實現(xiàn)。
2、6.3 系統(tǒng)各功能設計和運行界面截圖。-7.實驗總結(jié)7.1 遇到的問題和解決的辦法7.2 系統(tǒng)設計的不足7.3 進一步改進思路和體會1、 需求分析高校成績管理系統(tǒng)是一個記錄了大學生成績的系統(tǒng),它的出現(xiàn)使得查詢、更新、插入簡單化,高效化,成本也隨之大大減少。使用計算機對成績信息的管理,具有手工管理所無法比擬的優(yōu)點:信息存儲及時,檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高學生成績管理的效率,也是高校成績正規(guī)化管理的重要途徑。根據(jù)實際工作需要,提出了以下數(shù)據(jù)和業(yè)務處理需求:學生信息至少需要包含學號、姓名、性別、年齡、生源所在地、已修學分總數(shù)等數(shù)據(jù)項;課
3、程信息表至少需包含課程編號、課程名稱、任課教師、開課學期、學時、考試或考查、學分等數(shù)據(jù)項,課程根據(jù)班級開設。教師信息至少需要包含教師編號、姓名、性別、年齡、職稱、聯(lián)系電話等數(shù)據(jù)項;學生成績至少需要學號,學期,課程名稱,成績,任課老師等數(shù)據(jù)項;班級信息至少需要班級號,所設置課程編號,任課教師等數(shù)據(jù)項;需要實現(xiàn)以下業(yè)務處理和查詢功能:學生成績按每學年成績統(tǒng)計學生成績名次排定每門課程平均成績統(tǒng)計學生所學課程及學分統(tǒng)計學生已修學分總數(shù)查詢教師任課查詢班級課程開設查詢硬件環(huán)境:LENOVO-G470 軟件環(huán)境:Windows 7旗艦版 Microsoft
4、SQL Server 2008 Microsoft Visual Studio 2010教師1.1 數(shù)據(jù)需求描述 登入處理查詢登入教師信息學生信息管理人員高校成績管理系統(tǒng)數(shù)據(jù)庫學生查詢課程信息頂層數(shù)據(jù)流圖班級信息學生信息課程信息教師信息成績查詢課程查詢按成績排名按學年成績統(tǒng)計按課程成績查詢教師所授課程查詢所學課程學分統(tǒng)計已修學分查詢班級所設課程查詢詳細數(shù)據(jù)流圖1.2 系統(tǒng)功能需求 (1)學生成績按每學年進行成績統(tǒng)計; (2)學生成績名次排定; (3)每門課程平均成績統(tǒng)計; (4) 學生所學課程及學分統(tǒng)計; (5) 輸入每個學生成績時,自動生
5、成該學生已修總學分; (6) 學生成績查詢; (7) 教師任課查詢; (8) 班級課程開設查詢; 成績管理系統(tǒng)信息維護系統(tǒng)登入退出成績查詢學生所學課程學分查詢班級設置課程信息查詢教師任信息查詢調(diào)用存儲過程系統(tǒng)功能圖1.3 其他性能需求(1)可供多用戶同時使用。(2)用戶輸入出錯時,有錯誤提示。(3)安全性高。(4)存儲需求描述。(5)響應時間2、概念結(jié)構(gòu)設計2.1局部E-R圖:2.2合并成全局E-R圖:3、邏輯結(jié)構(gòu)設計3.1 關(guān)系模式設計教師wmq(教師編號wmq、教師姓名wmq、教師性別wmq、教師年齡wmq、職稱wmq、聯(lián)系電話wmq)上課wmq(教師編號wmq,班級編號wmq)授課wmq
6、(教師編號wmq,課程編號wmq)課程wmq(課程編號wmq、課程名稱wmq、教師姓名wmq、開課學期wmq、課程學時wmq、考核方式wmq、學分wmq)學習wmq(學號wmq,課程編號wmq,學期wmq,成績wmq,教師姓名wmq)學生wmq(學號wmq、姓名wmq、性別wmq、年齡wmq、生源所在地wmq、已修學分總數(shù)wmq,班級編號wmq)開設wmq(課程編號wmq,班級編號wmq)班級wmq(班級編號wmq,班級名稱wmq,專業(yè)編號wmq)專業(yè)wmq(專業(yè)編號wmq,專業(yè)名稱wmq)登陸wmq(用戶名wmq,密碼wmq,權(quán)限wmq)3.2 數(shù)據(jù)類型定義 (1)教師wmq數(shù)據(jù)項名數(shù)據(jù)類型
7、長度完整性約束教師編號wmqchar5主鍵教師姓名wmqchar10教師性別wmqchar5教師年齡wmqint5職稱wmqchar10聯(lián)系電話wmqchar20(2)上課wmq數(shù)據(jù)項名數(shù)據(jù)類型長度完整性約束教師編號wmqchar5主鍵外鍵班級編號wmqchar5外鍵(3)授課wmq數(shù)據(jù)項名數(shù)據(jù)類型長度完整性約束教師編號wmqchar5主鍵外鍵課程編號wmqchar5外鍵(4)課程wmq數(shù)據(jù)項名數(shù)據(jù)類型長度完整性約束課程編號wmqchar5主鍵課程名稱wmqchar10教師姓名wmqchar10開課時間wmqchar20課程學時wmqint10>0考核方式wmqchar5學分wmqint
8、5>0(5)學習wmq數(shù)據(jù)項名數(shù)據(jù)類型長度完整性約束學號wmqchar5主鍵外鍵課程編號wmqchar5外鍵學期wmqchar10成績wmqint10教師姓名wmqchar10(6)學生wmq數(shù)據(jù)項名數(shù)據(jù)類型長度完整性約束學號wmqchar5主鍵姓名wmqchar10性別wmqchar5年齡wmqint5生源所在地wmqChar20已修學分總數(shù)wmqint5班級編號wmqchar5外鍵(7)開設wmq數(shù)據(jù)項名數(shù)據(jù)類型長度完整性約束課程編號wmqchar5主鍵外鍵班級編號wmqchar5外鍵(8)班級wmq數(shù)據(jù)項名數(shù)據(jù)類型長度完整性約束班級編號wmqchar5主鍵班級名稱wmqchar10
9、專業(yè)編號wmqchar5外鍵(9)專業(yè)wmq數(shù)據(jù)項名數(shù)據(jù)類型長度完整性約束專業(yè)編號wmqchar5主鍵專業(yè)名稱wmqchar10(10)登陸wmq數(shù)據(jù)項名數(shù)據(jù)類型長度完整性約束用戶名wmqchar20主鍵密碼wmqchar20權(quán)限wmqchar104、物理結(jié)構(gòu)設計4.1 聚簇設計教師wmq(教師編號wmq)課程wmq(課程編號wmq)學生wmq(學號wmq,班級編號wmq)班級wmq(班級編號wmq)這幾個聚簇設計是因為這幾張表都是實體表,且聚簇中的屬性都是主鍵或是外鍵,被訪問的概率很高,而其他表或者這些表上的其他屬性被訪問的概率就相對較低。4.2 索引設計建立索引的一般規(guī)則:(1) 在主鍵屬
10、性列和外鍵屬性列上通常都可以分別建立索引,不僅有助于唯一性檢查和完整性檢查,而且可以加快連接查詢的速度。(2) 以查詢?yōu)橹鞯年P(guān)系可建立盡可能多的索引。(3) 對等值連接,但滿足條件的元組較少的查詢可以考慮建立索引。(4) 如果查詢可以從索引直接得到結(jié)果而不必訪問關(guān)系,則對此種查詢可以建立索引。所以在高線成績管理數(shù)據(jù)庫中建立索引如下: 教師wmq(教師編號wmq)課程wmq(課程編號wmq)學生wmq(學生學號wmq,班級編號wmq)班級wmq(班級編號wmq)學習wmq(學號wmq,課程編號wmq)4.3 分區(qū)設計涉及到數(shù)據(jù)庫文件和日志文件的分區(qū)問題。磁盤分區(qū)設計的一般原則:(1) 減少訪問沖
11、突,提高I/O并發(fā)性。多個事物并發(fā)訪問同一磁盤時,會產(chǎn)生磁盤訪問沖突而導致效率低下,如果事務訪問數(shù)據(jù)均能分布于不同磁盤上,則I/O可并發(fā)執(zhí)行,從而提高數(shù)據(jù)庫訪問速度。(2) 分散熱點數(shù)據(jù),均衡I/O負擔。在數(shù)據(jù)庫中數(shù)據(jù)訪問的頻率是不均勻的,那些經(jīng)常被訪問的數(shù)據(jù)成為熱點數(shù)據(jù),此類數(shù)據(jù)宜分散存在于不同的磁盤上,以均衡各個磁盤的負荷,充分發(fā)揮多磁盤的并行操作的優(yōu)勢。(3) 保證關(guān)鍵數(shù)據(jù)快速訪問,緩解系統(tǒng)瓶頸。在數(shù)據(jù)庫中有些數(shù)據(jù)如數(shù)據(jù)字典等的訪問頻率很高,為保證對它的訪問不直接影響整個系統(tǒng)的效率,可以將其存放在某一固定磁盤上,以保證其快速訪問。該成績管理系統(tǒng)由于程序較小,所以不進行分區(qū)設計。5、數(shù)據(jù)庫
12、實施數(shù)據(jù)庫的建立:5.1 基本表建立(1)教師wmq表建立:(2)課程wmq表建立:(3)專業(yè)wmq表建立:(4)班級wmq表建立:(5)學生wmq表建立:(6)上課wmq表建立:(7)授課wmq表建立:(8)學習wmq表建立:(9)開設wmq表建立:(10)登陸wmq表建立:5.2數(shù)據(jù)輸入(1)專業(yè)表數(shù)據(jù)插入:(2)班級表數(shù)據(jù)插入:(3)學生表數(shù)據(jù)插入:(4)教師表插入:(5)課程表數(shù)據(jù)插入:(6)授課表數(shù)據(jù)插入:(7)學習表數(shù)據(jù)插入:(8)開設表數(shù)據(jù)插入:(9)上課表數(shù)據(jù)插入:(10)登陸表數(shù)據(jù)插入:5.3 視圖的建立(1)學生成績統(tǒng)計:(2)每門課程平均成績統(tǒng)計:(3)學生所學課程及學分
13、統(tǒng)計(4)教師任課查詢:(5)班級課程開設查詢:(6)生源地平均成績查詢5.4 索引的建立因為每一個表建立,SSMS會自動生成一個聚集索引,所以不需要再手動建立聚集索引。下面根據(jù)4.2來設計索引:(1)教師編號wmq:(2)專業(yè)編號wmq:(3)班級編號wmq,專業(yè)編號wmq:(4)課程編號wmq:(5)學生學號wmq,班級編號wmq:(6)學生學號wmq,課程編號wmq:5.5 觸發(fā)器建立 (1)學分統(tǒng)計wmq當用戶 insert新的成績且該成績>=60分時,增加相應學分(2)刪除教師wmq當刪除教師表中的教師編號wmq記錄時,需要相應地刪除授課表和上課表里的教師編號wmq,
14、所以在教師表上建立觸發(fā)器(3)更新教師wmq當更新教師表中的教師編號wmq記錄時,需要相應地更新授課表和上課表里的教師編號wmq,所以在教師表上建立觸發(fā)器5.6 建存儲過程(1)建立一個對學生表插入信息的存儲過程:(2)建立一個輸入成績,自動生成其總學分的存儲過程:6、應用系統(tǒng)開發(fā)與試運行6.1 開發(fā)平臺和開發(fā)環(huán)境介紹。開發(fā)平臺:Microsoft Visual Studio 2010開發(fā)環(huán)境:Visual Studio是微軟公司推出的開發(fā)環(huán)境。是目前最流行的Windows平臺應用程序開發(fā)環(huán)境。Visual Studio 2010版本于2010年4月12日上市,其集成開發(fā)環(huán)境(IDE)的界面被
15、重新設計和組織,變得更加簡單明了。Visual Studio 2010同時帶來了 NET Framework 4.0、Microsoft Visual Studio 2010 CTP( Community Technology Preview-CTP),并且支持開發(fā)面向Windows 7的應用程序。除了Microsoft SQL Server,它還支持 IBM DB2和Oracle數(shù)據(jù)庫。與此同時,微軟還引入了一門新的語言C#,C#是一門建立在C+和Java基礎上的編寫.NET框架的現(xiàn)代語言。6.2 前臺界面與后臺數(shù)據(jù)庫連接說明,代碼實現(xiàn):using System;using System.C
16、ollections.Generic;using System.Linq;using System.Text;using System.Data;using System.Data.SqlClient;using System.Windows.Forms;namespace D01wangminqian class sqlConnect public SqlConnection coon = null; public sqlConnect() if (coon = null) coon = new SqlConnection("Data source =(local);Integra
17、ted Security=SSPI;" + "Initial Catalog =D01wangminqian"); if (coon.State = ConnectionState.Closed) coon.Open(); public void closeConnect() if (coon.State = ConnectionState.Open) coon.Close(); public DataSet Getds(string sql) if (coon.State = ConnectionState.Closed) coon.Open(); DataSe
18、t ds = new DataSet(); SqlDataAdapter da = new SqlDataAdapter(sql, coon); da.Fill(ds); coon.Close(); return ds; public int OperateData(string sql) if (coon.State = ConnectionState.Closed) coon.Open(); SqlCommand sqlcom = new SqlCommand(); sqlcom.CommandText = sql; sqlcom.CommandType = CommandType.Tex
19、t; sqlcom.Connection = coon; int x = sqlcom.ExecuteNonQuery(); coon.Close(); return x; public DataSet BinDataGriView(DataGridView dgv, string sql) if (coon.State = ConnectionState.Closed) coon.Open(); SqlDataAdapter da = new SqlDataAdapter(sql, coon); DataSet ds = new DataSet(); da.Fill(ds); dgv.Dat
20、aSource = ds.Tables0; return ds; 6.3 系統(tǒng)各功能設計和運行界面截圖。登陸系統(tǒng)各功能流程圖:登陸管理員教師學生管理員操作主界面教師操作主界面學生操作主界面教務安排信息管理信息轉(zhuǎn)儲信息查詢成績錄入信息查詢教師安排班級信息管理課程信息管理學生信息管理信息轉(zhuǎn)儲成績錄入學生信息教師任課已修學分教師任課班級開課學生成績生源地(1)登陸界面:不同的用戶類型進入的界面不同:(2)管理員界面:(3)教師界面:(4)學生界面:(5)管理員進入界面后,主要的操作是教務安排,以及教師、班級、學生信息的管理操作,各操作界面如下:(6)教師進入界面后的主要操作是教師任課、學生信息查詢,
21、以及成績的錄入,各操作界面如下:(7)學生進入界面后主要的操作是生源地平均成績查詢、教師任課查詢、班級開課查詢、成績、已修學分查詢:7、實驗總結(jié)7.1 遇到的問題和解決的辦法(1)概念結(jié)構(gòu)設計 在系統(tǒng)需求分析完成以后,我根據(jù)用戶需求設計概念結(jié)構(gòu)的時候遇到了數(shù)據(jù)冗余等多種問題,經(jīng)過慢慢的分解關(guān)系最終得到了相對來說還比較完善的概念結(jié)構(gòu),通過ER圖表示出來。(2)數(shù)據(jù)插入 在進行高校成績管理數(shù)據(jù)庫插入時,我出現(xiàn)了許多錯誤,后來檢驗下來,發(fā)現(xiàn)主要錯在數(shù)據(jù)的類型、大小以及各個約束關(guān)系上,導致一些插入無法進行。而刪除、重建基本表,會發(fā)現(xiàn)完整性約束導致基本表不能刪除,所以我利用基本表的修改ALTER來進行改
22、動。(3)觸發(fā)器和存儲過程開始一直搞不清楚這兩個到底是個什么作用,應該怎樣設計,最后通過查閱書本以及網(wǎng)絡資料,弄清了這兩個概念,并設計了觸發(fā)器和存儲過程。現(xiàn)將觸發(fā)器和存儲過程的概念如下:觸發(fā)器:觸發(fā)器(trigger)是個特殊的存儲過程,它的執(zhí)行不是由程序調(diào)用,也不是手工啟動,而是由事件來觸發(fā),比如當對一個表進行操作( insert,delete,update)時就會激活它執(zhí)行。觸發(fā)器經(jīng)常用于加強數(shù)據(jù)的完整性約束和業(yè)務規(guī)則等。 觸發(fā)器可以從 DBA_TRIGGERS ,USER_TRIGGERS 數(shù)據(jù)字典中查到。存儲過程:存儲過程(Stored Procedure)是一組為了完成特定功能的SQL語句集,是利用SQL Server 所提供的Transact-SQL 語言所編寫的程序。經(jīng)編譯后存儲在數(shù)據(jù)庫中。存儲過程是數(shù)據(jù)庫中的一個重要對象,用戶通過指定存儲過程的名字并給出參數(shù)(如果該存儲過程帶有參數(shù))來執(zhí)行它。存儲過程是由流控制和SQL 語句書寫的過程,這個過程經(jīng)編譯和優(yōu)化后存儲在數(shù)據(jù)庫服務器中,存儲過程可由應用程序通過一個調(diào)用來執(zhí)行,而且允許用戶聲明變量 。同時,存儲過程可以接收和輸出參數(shù)、返回執(zhí)行存儲過程的狀態(tài)值,也可以嵌套調(diào)用。(4)連接數(shù)據(jù)庫剛開始我打開microsoft visual
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2018-2024年中國電池鋁箔市場供需現(xiàn)狀及投資研究報告(目錄)
- 《交流電動機》課件
- 其他紙包裝制品教學課件
- 衛(wèi)生行為干預效果長期跟蹤-洞察分析
- 胎盤miRNA與遺傳變異關(guān)聯(lián)-洞察分析
- 碳捕獲與封存技術(shù)國際合作研究-洞察分析
- 反詐防詐騙活動總結(jié)范文(11篇)
- 先進鑄造技術(shù)發(fā)展趨勢-洞察分析
- 稅收環(huán)境與企業(yè)發(fā)展-洞察分析
- 羽絨制品產(chǎn)業(yè)國際競爭力-洞察分析
- 人體器官有償捐贈流程
- 數(shù)控車編程課件
- 2023年1月自考11468工作崗位研究原理與應用試題及答案
- 《徐志摩介紹說明》課件
- 火災事故應急處置卡
- 比較教育學課件12級
- 廣東省佛山市2022-2023學年八年級上學期期末英語試卷(含答案)
- 2023天津市部分區(qū)七年級上學期語文期末試卷及答案
- 七年級生物上復習計劃3篇(七年級上冊生物復習知識點)
- 膠體的穩(wěn)定性
- 常見急救知識培訓課件
評論
0/150
提交評論