




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、精選優質文檔-傾情為你奉上高校成績管理系統數據庫設計與實現班級 計科1201 學號 XX 姓名 XXX 目錄:-1.1數據需求描述1.2 系統功能需求 1.3 其他性能需求-2.1畫出局部E-R圖;2.2合并成全局E-R圖;-3.1 關系模式設計3.2 數據類型定義-4.1 聚簇設計4.2 索引設計4.3 分區設計-5.1 基本表建立5.2 數據輸入5.3 視圖的建立5.4 索引的建立5.5 觸發器建立 5.6 建存儲過程-6.1 開發平臺和開發環境介紹。6.2 前臺界面與后臺數據庫連接說明,代碼實現。6.3 系統各功能設計和運行界面截圖。-7.1 遇到的問題和解決的辦法7.2 系統設計的不足
2、7.3 進一步改進思路和體會1、 需求分析高校成績管理系統是一個記錄了大學生成績的系統,它的出現使得查詢、更新、插入簡單化,高效化,成本也隨之大大減少。使用計算機對成績信息的管理,具有手工管理所無法比擬的優點:信息存儲及時,檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優點能夠極大地提高學生成績管理的效率,也是高校成績正規化管理的重要途徑。根據實際工作需要,提出了以下數據和業務處理需求:學生信息至少需要包含學號、姓名、性別、年齡、生源所在地、已修學分總數等數據項;課程信息表至少需包含課程編號、課程名稱、任課教師、開課學期、學時、考試或考查、學分等數據項,課程根據班級開
3、設。教師信息至少需要包含教師編號、姓名、性別、年齡、職稱、聯系電話等數據項;學生成績至少需要學號,學期,課程名稱,成績,任課老師等數據項;班級信息至少需要班級號,所設置課程編號,任課教師等數據項;需要實現以下業務處理和查詢功能:學生成績按每學年成績統計學生成績名次排定每門課程平均成績統計學生所學課程及學分統計學生已修學分總數查詢教師任課查詢班級課程開設查詢硬件環境:LENOVO-G470 軟件環境:Windows 7旗艦版 Microsoft SQL Server 2008 Microsoft Visual Studio 2010教師1.1 數據
4、需求描述 登入處理查詢登入教師信息學生信息管理人員高校成績管理系統數據庫學生查詢課程信息頂層數據流圖班級信息學生信息課程信息教師信息成績查詢課程查詢按成績排名按學年成績統計按課程成績查詢教師所授課程查詢所學課程學分統計已修學分查詢班級所設課程查詢詳細數據流圖1.2 系統功能需求 (1)學生成績按每學年進行成績統計; (2)學生成績名次排定; (3)每門課程平均成績統計; (4) 學生所學課程及學分統計; (5) 輸入每個學生成績時,自動生成該學生已修總學分; (6) 學生成績查詢; (7) 教師任課查詢; (8) 班級課程開設查詢; 成績管
5、理系統信息維護系統登入退出成績查詢學生所學課程學分查詢班級設置課程信息查詢教師任信息查詢調用存儲過程系統功能圖1.3 其他性能需求(1)可供多用戶同時使用。(2)用戶輸入出錯時,有錯誤提示。(3)安全性高。(4)存儲需求描述。(5)響應時間2、概念結構設計2.1局部E-R圖:2.2合并成全局E-R圖:3、邏輯結構設計3.1 關系模式設計教師wmq(教師編號wmq、教師姓名wmq、教師性別wmq、教師年齡wmq、職稱wmq、聯系電話wmq)上課wmq(教師編號wmq,班級編號wmq)授課wmq(教師編號wmq,課程編號wmq)課程wmq(課程編號wmq、課程名稱wmq、教師姓名wmq、開課學期w
6、mq、課程學時wmq、考核方式wmq、學分wmq)學習wmq(學號wmq,課程編號wmq,學期wmq,成績wmq,教師姓名wmq)學生wmq(學號wmq、姓名wmq、性別wmq、年齡wmq、生源所在地wmq、已修學分總數wmq,班級編號wmq)開設wmq(課程編號wmq,班級編號wmq)班級wmq(班級編號wmq,班級名稱wmq,專業編號wmq)專業wmq(專業編號wmq,專業名稱wmq)登陸wmq(用戶名wmq,密碼wmq,權限wmq)3.2 數據類型定義 (1)教師wmq數據項名數據類型長度完整性約束教師編號wmqchar5主鍵教師姓名wmqchar10教師性別wmqchar5教師年齡wm
7、qint5職稱wmqchar10聯系電話wmqchar20(2)上課wmq數據項名數據類型長度完整性約束教師編號wmqchar5主鍵外鍵班級編號wmqchar5外鍵(3)授課wmq數據項名數據類型長度完整性約束教師編號wmqchar5主鍵外鍵課程編號wmqchar5外鍵(4)課程wmq數據項名數據類型長度完整性約束課程編號wmqchar5主鍵課程名稱wmqchar10教師姓名wmqchar10開課時間wmqchar20課程學時wmqint10>0考核方式wmqchar5學分wmqint5>0(5)學習wmq數據項名數據類型長度完整性約束學號wmqchar5主鍵外鍵課程編號wmqch
8、ar5外鍵學期wmqchar10成績wmqint10教師姓名wmqchar10(6)學生wmq數據項名數據類型長度完整性約束學號wmqchar5主鍵姓名wmqchar10性別wmqchar5年齡wmqint5生源所在地wmqChar20已修學分總數wmqint5班級編號wmqchar5外鍵(7)開設wmq數據項名數據類型長度完整性約束課程編號wmqchar5主鍵外鍵班級編號wmqchar5外鍵(8)班級wmq數據項名數據類型長度完整性約束班級編號wmqchar5主鍵班級名稱wmqchar10專業編號wmqchar5外鍵(9)專業wmq數據項名數據類型長度完整性約束專業編號wmqchar5主鍵專
9、業名稱wmqchar10(10)登陸wmq數據項名數據類型長度完整性約束用戶名wmqchar20主鍵密碼wmqchar20權限wmqchar104、物理結構設計4.1 聚簇設計教師wmq(教師編號wmq)課程wmq(課程編號wmq)學生wmq(學號wmq,班級編號wmq)班級wmq(班級編號wmq)這幾個聚簇設計是因為這幾張表都是實體表,且聚簇中的屬性都是主鍵或是外鍵,被訪問的概率很高,而其他表或者這些表上的其他屬性被訪問的概率就相對較低。4.2 索引設計建立索引的一般規則:(1) 在主鍵屬性列和外鍵屬性列上通常都可以分別建立索引,不僅有助于唯一性檢查和完整性檢查,而且可以加快連接查詢的速度。
10、(2) 以查詢為主的關系可建立盡可能多的索引。(3) 對等值連接,但滿足條件的元組較少的查詢可以考慮建立索引。(4) 如果查詢可以從索引直接得到結果而不必訪問關系,則對此種查詢可以建立索引。所以在高線成績管理數據庫中建立索引如下: 教師wmq(教師編號wmq)課程wmq(課程編號wmq)學生wmq(學生學號wmq,班級編號wmq)班級wmq(班級編號wmq)學習wmq(學號wmq,課程編號wmq)4.3 分區設計涉及到數據庫文件和日志文件的分區問題。磁盤分區設計的一般原則:(1) 減少訪問沖突,提高I/O并發性。多個事物并發訪問同一磁盤時,會產生磁盤訪問沖突而導致效率低下,如果事務訪問數據均能
11、分布于不同磁盤上,則I/O可并發執行,從而提高數據庫訪問速度。(2) 分散熱點數據,均衡I/O負擔。在數據庫中數據訪問的頻率是不均勻的,那些經常被訪問的數據成為熱點數據,此類數據宜分散存在于不同的磁盤上,以均衡各個磁盤的負荷,充分發揮多磁盤的并行操作的優勢。(3) 保證關鍵數據快速訪問,緩解系統瓶頸。在數據庫中有些數據如數據字典等的訪問頻率很高,為保證對它的訪問不直接影響整個系統的效率,可以將其存放在某一固定磁盤上,以保證其快速訪問。該成績管理系統由于程序較小,所以不進行分區設計。5、數據庫實施數據庫的建立:5.1 基本表建立(1)教師wmq表建立:(2)課程wmq表建立:(3)專業wmq表建
12、立:(4)班級wmq表建立:(5)學生wmq表建立:(6)上課wmq表建立:(7)授課wmq表建立:(8)學習wmq表建立:(9)開設wmq表建立:(10)登陸wmq表建立:5.2數據輸入(1)專業表數據插入:(2)班級表數據插入:(3)學生表數據插入:(4)教師表插入:(5)課程表數據插入:(6)授課表數據插入:(7)學習表數據插入:(8)開設表數據插入:(9)上課表數據插入:(10)登陸表數據插入:5.3 視圖的建立(1)學生成績統計:(2)每門課程平均成績統計:(3)學生所學課程及學分統計(4)教師任課查詢:(5)班級課程開設查詢:(6)生源地平均成績查詢5.4 索引的建立因為每一個表建
13、立,SSMS會自動生成一個聚集索引,所以不需要再手動建立聚集索引。下面根據4.2來設計索引:(1)教師編號wmq:(2)專業編號wmq:(3)班級編號wmq,專業編號wmq:(4)課程編號wmq:(5)學生學號wmq,班級編號wmq:(6)學生學號wmq,課程編號wmq:5.5 觸發器建立 (1)學分統計wmq當用戶 insert新的成績且該成績>=60分時,增加相應學分(2)刪除教師wmq當刪除教師表中的教師編號wmq記錄時,需要相應地刪除授課表和上課表里的教師編號wmq,所以在教師表上建立觸發器(3)更新教師wmq當更新教師表中的教師編號wmq記錄時,需要相應地更新授課表和
14、上課表里的教師編號wmq,所以在教師表上建立觸發器5.6 建存儲過程(1)建立一個對學生表插入信息的存儲過程:(2)建立一個輸入成績,自動生成其總學分的存儲過程:6、應用系統開發與試運行6.1 開發平臺和開發環境介紹。開發平臺:Microsoft Visual Studio 2010開發環境:Visual Studio是微軟公司推出的開發環境。是目前最流行的Windows平臺應用程序開發環境。Visual Studio 2010版本于2010年4月12日上市,其集成開發環境(IDE)的界面被重新設計和組織,變得更加簡單明了。Visual Studio 2010同時帶來了 NET Framewo
15、rk 4.0、Microsoft Visual Studio 2010 CTP( Community Technology Preview-CTP),并且支持開發面向Windows 7的應用程序。除了Microsoft SQL Server,它還支持 IBM DB2和Oracle數據庫。與此同時,微軟還引入了一門新的語言C#,C#是一門建立在C+和Java基礎上的編寫.NET框架的現代語言。6.2 前臺界面與后臺數據庫連接說明,代碼實現:using System;using System.Collections.Generic;using System.Linq;using System.Te
16、xt;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);Integrated Security=SSPI;" + "Initial Catalog =D0
17、1wangminqian"); 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(); DataSet ds = new DataSet(); SqlDataAdapter da = new SqlDat
18、aAdapter(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.Text; sqlcom.Connection = coon; int x = sqlcom.ExecuteN
19、onQuery(); 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.DataSource = ds.Tables0; return ds; 6.3 系統各功能設計和運行界面截圖。
20、登陸系統各功能流程圖:登陸管理員教師學生管理員操作主界面教師操作主界面學生操作主界面教務安排信息管理信息轉儲信息查詢成績錄入信息查詢教師安排班級信息管理課程信息管理學生信息管理信息轉儲成績錄入學生信息教師任課已修學分教師任課班級開課學生成績生源地(1)登陸界面:不同的用戶類型進入的界面不同:(2)管理員界面:(3)教師界面:(4)學生界面:(5)管理員進入界面后,主要的操作是教務安排,以及教師、班級、學生信息的管理操作,各操作界面如下:(6)教師進入界面后的主要操作是教師任課、學生信息查詢,以及成績的錄入,各操作界面如下:(7)學生進入界面后主要的操作是生源地平均成績查詢、教師任課查詢、班級開
21、課查詢、成績、已修學分查詢:7、實驗總結7.1 遇到的問題和解決的辦法(1)概念結構設計 在系統需求分析完成以后,我根據用戶需求設計概念結構的時候遇到了數據冗余等多種問題,經過慢慢的分解關系最終得到了相對來說還比較完善的概念結構,通過ER圖表示出來。(2)數據插入 在進行高校成績管理數據庫插入時,我出現了許多錯誤,后來檢驗下來,發現主要錯在數據的類型、大小以及各個約束關系上,導致一些插入無法進行。而刪除、重建基本表,會發現完整性約束導致基本表不能刪除,所以我利用基本表的修改ALTER來進行改動。(3)觸發器和存儲過程開始一直搞不清楚這兩個到底是個什么作用,應該怎樣設計,最后通過查閱書本以及網絡
22、資料,弄清了這兩個概念,并設計了觸發器和存儲過程。現將觸發器和存儲過程的概念如下:觸發器:觸發器(trigger)是個特殊的存儲過程,它的執行不是由程序調用,也不是手工啟動,而是由事件來觸發,比如當對一個表進行操作( insert,delete,update)時就會激活它執行。觸發器經常用于加強數據的完整性約束和業務規則等。 觸發器可以從 DBA_TRIGGERS ,USER_TRIGGERS 數據字典中查到。存儲過程:存儲過程(Stored Procedure)是一組為了完成特定功能的SQL語句集,是利用SQL Server 所提供的Transact-SQL 語言所編寫的程序。經編譯后存儲在數據庫中。存儲過程是數據庫中的一個重要對象,用戶通過指定存儲過程的名字并給出參數(如果該存儲過程帶有參數)來執行它。存儲過程是由流控制和SQL 語句書寫的過程,這個過程經編譯和優化后存儲在數據庫服務器中,存儲過程可由應用程序通過一個調用來執行,而且允許用戶聲明變量 。同時,存儲過程可以接收和輸出參數、返回執行存儲過程的狀態值,也可以嵌套調用。(4)連接數據庫剛開始我打開microsoft visual studio ,在創建C#工程的時候發現工程選項中根本就沒有visual c#這一項,通過請教同學才知道可能是我的visual studio沒有安裝完整,于是我又通過重新
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 建筑抗震裝修租賃協議3篇
- 家具銷售發票3篇
- 勞務分包合同解除協議3篇
- 四方抵賬協議模板3篇
- 悔過自新之家暴者3篇
- 合同起訴狀模板范文3篇
- 劃款授權委托書示例樣本格式3篇
- 二手房屋買賣合同糾紛的處理流程3篇
- 小程序技術開發服務合同模板3篇
- 糖果與巧克力市場動態監控考核試卷
- 成人高尿酸血癥與痛風食養指南(2024年版)
- 2024年首都機場集團招聘筆試參考題庫附帶答案詳解
- 2023年山東省專升本考試高等數學Ⅲ試題和答案
- 抗血栓藥物臨床應用與案例分析課件
- 吉林省地方教材家鄉小學二年級下冊家鄉教案
- 決策樹在飼料技術推廣中的應用研究
- 兒童長期臥床的護理
- 投標書細節美化教程
- 《小兒支氣管肺炎》課件
- 對輥式破碎機設計
- 財產險水災現場勘查及理賠定損標準
評論
0/150
提交評論