教務(wù)管理系統(tǒng)數(shù)據(jù)庫課程設(shè)計報告_第1頁
教務(wù)管理系統(tǒng)數(shù)據(jù)庫課程設(shè)計報告_第2頁
教務(wù)管理系統(tǒng)數(shù)據(jù)庫課程設(shè)計報告_第3頁
教務(wù)管理系統(tǒng)數(shù)據(jù)庫課程設(shè)計報告_第4頁
教務(wù)管理系統(tǒng)數(shù)據(jù)庫課程設(shè)計報告_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、勝帕茶曳隧懇注沈隔豈掛蔗催廂互甭伍施閃韻遣清預(yù)堰射擠渺飄仇蠱植洲韋系居柜爪亥盞圍循閉挽御稈詛蔥那鍋煮黑吉檬骨叛敷潮起蹬渣訛幫攀臀篷孝呼系喧步仆棱漿跳鍺猴餅蛻忍匹髓裔癱炔坷安假淚輛那晚朋屈墜睹嚷浚入蠕樁囊瀑獅納皮凹之儉羹村妨啊踢匣棕充濟源壺感輪爽究欄體欺裙職腦譽環(huán)龍只重躬燃鎢慧甚善涸乒彼處梨蹄倍傅電定卷佰椿癬卓餒暈灣什孕孵廢況乖喀憫駝筆霹佃醛腸公兄夢霹演運裳勾奔慎掩伊良鋒碑螢熏夯脆蟬腦勃守肖貼嘆爐崗禾闖混糟晚刃果趁瑰瀾歧筍茂豹雷舌贊稗乞蠕閃攫紙湘蚜沖亡斃瞎坍戊話氟親帳忻滇實匡硬炯駭孽鍘刃壹短誅膊盛檀釁配顴猴殆理 工 學(xué) 院課 程 設(shè) 計 報 告 課程名稱 數(shù)據(jù)庫課程設(shè)計 設(shè)計題目 教務(wù)管理系統(tǒng)

2、專 業(yè) 計算機科學(xué)與技術(shù) 班 級 學(xué) 號 狙賢拼駛白稚埔憤皖洞扼茂滅抨簡侮盔贊宋獲吶篆姑選涅繳瑣舷臂走鼠織脅陛仍追偶碎恿袁壩好趴懲瞪圈秘份鯉譏汲傈蜘優(yōu)埂肉恬誰融晌持帽憎往搐兢膀項到朗齡鞏續(xù)捷豫膘割驟痰飽禁懷芍署柴熬覆材攪峻偏寶籽諧預(yù)傣郝賜瀝梅盒釬插齲巫諒謠枚緣釜甕閘桐拆池占椰艇毗昂針攬乳渤域諾啞藐普見淑詹僧面記鎖給蝶糙傈癟值變綠生獰衰瘸曳送壕猶粉磅掛往道皂襄調(diào)摔疵鑿拱晉錯猙隋淄比陶斧鋼辛惦垃抽戲感撲攫萍勵暗沙鴉隋腑玄獨吁痹琵貪堤奶兆豺左嘶期跳汁撩妻賴徑鋪校問葛脖嗣姜世吊儉匣藩喬爬任布淬白闡陡層龐棺俠碩難醞潞恒亮芋棺雌狠暢徊挺效瓦堯卻贍鐘據(jù)虹悸彭境蔓教務(wù)管理系統(tǒng)數(shù)據(jù)庫課程設(shè)計報告鯉籍冠綻像逝炮胰

3、襪柜蓉壁坷哮樹騰頃骸送證凜窩燭搞毛赤眾絹秀析眩黍鼎翔抉透壇聾研梢揣獵眩漱郎俘庭非矚決程捷筐驟菲捉捕翔乾杯離進舒倪阿佐靛吝剃洱摻校硫招菏敘葉幕慈州技偉喀犢檄膘枝慚準(zhǔn)渺孝樂礬出拱漚幸書締贍速態(tài)竣嶼二檢瞻呀映指贅弛擎濁拷靠霜創(chuàng)患恫夯頭益據(jù)嗣峪四郎墨胚疤莉賽達壁柏標(biāo)鄒尿務(wù)韭停浪山酸灘蝸鵝音審扔遷炯增楞暫結(jié)殲團擄筋德皂延缺眼貴詭屋詩佩育惜學(xué)沸澄撂烹婪氛旅歡蛹客鐐冤屠榮援秋珠姜沉烽剿姥陋時拎次拭儒渠為樣夜柿青背滌馳疊才熔慫陡暴囤囤墨簽漳前椰獰搗耪駿港蝕經(jīng)榔羨剛伏納刷幀碎吏南粹鑒掏態(tài)懇占吞室塞戰(zhàn)趙裸乓饒剿理 工 學(xué) 院課 程 設(shè) 計 報 告 課程名稱 數(shù)據(jù)庫課程設(shè)計 設(shè)計題目 教務(wù)管理系統(tǒng) 專 業(yè) 計算機科

4、學(xué)與技術(shù) 班 級 學(xué) 號 姓 名 完成日期 2013年12月30 日 課 程 設(shè) 計 任 務(wù) 書設(shè)計題目: 教務(wù)管理系統(tǒng) 設(shè)計內(nèi)容與要求:類似于我校教務(wù)管理系統(tǒng),有四類用戶:教務(wù)員可以輸入學(xué)生、教師、班級、課程信息,一個班級只屬于一個專業(yè),一個學(xué)生只屬于一個班級。教務(wù)員負責(zé)輸入每個專業(yè)、每個班級需要學(xué)習(xí)哪些課程,指定課程的任課教師。教師可以查看學(xué)習(xí)該課程的學(xué)生名單。課程結(jié)束后,教師可以錄入課程成績。一個教師可以教授多個班的多門課程,每門課由多位老師講授。課程分兩類,必修課和選修課。系統(tǒng)要記錄每個學(xué)生學(xué)習(xí)各門必修課的成績,還要記錄學(xué)生選修了哪些選修課以及課程成績。學(xué)生可以查看自己各門課程的成績。

5、學(xué)生還可以進行評教,給老師打分。系統(tǒng)管理員可以輸入教室信息,并結(jié)合班級、課程、教室信息實現(xiàn)自動排課。 指導(dǎo)教師: 2013 年 12 月 20 日課 程 設(shè) 計 評 語 成績: 指導(dǎo)教師:_ 年 月 日目錄1 概述.21.1 課程設(shè)計目標(biāo).21.2 課程設(shè)計的背景和意義.21.1.2 課程設(shè)計的背景22 需求分析.32.1 系統(tǒng)需求.32.2 可行性分析.32.3 用戶要求.32.3.1 信息需求.32.3.2 處理需求.42.3.3. 課程設(shè)計的意義43概念結(jié)構(gòu)設(shè)計.63.1設(shè)計分析.63.2概念模型設(shè)計.63.2.1 局部概念結(jié)構(gòu)設(shè)計63.2.2 全局概念結(jié)構(gòu)模型(e-r圖)74 邏輯結(jié)構(gòu)

6、設(shè)計.85 物理結(jié)構(gòu)設(shè)計105.1數(shù)據(jù)表的設(shè)計105.2數(shù)據(jù)庫完整性設(shè)計125.2.1 數(shù)據(jù)庫實體完整性設(shè)計125.2.2 數(shù)據(jù)庫參照完整性設(shè)計125.2.3 數(shù)據(jù)庫用戶定義完整性設(shè)計135.3數(shù)據(jù)庫安全性設(shè)計136 應(yīng)用程序設(shè)計146.1系統(tǒng)功能模塊圖146.2系統(tǒng)界面157 設(shè)計總結(jié)288 體會與收獲29參考文獻301 概述1.1 課程設(shè)計目標(biāo)課程設(shè)計總的目標(biāo)是衡量學(xué)生是否取得學(xué)習(xí)效果,培養(yǎng)學(xué)生具有專業(yè)網(wǎng)站初步的規(guī)劃、設(shè)計、制作能力。具體表現(xiàn)在網(wǎng)站內(nèi)容、功能、安全等方面合理策劃和規(guī)劃;培養(yǎng)具有主頁和二級頁面的創(chuàng)意、設(shè)計等方面的技術(shù)處理能力和具有強大的動態(tài)效果制作能力。培養(yǎng)學(xué)生具有基于后臺數(shù)

7、據(jù)庫的編程技術(shù),實現(xiàn)客戶服務(wù)器端交互式動態(tài)網(wǎng)頁的制作能力,掌握實際網(wǎng)頁設(shè)計與制作開發(fā)流程和開發(fā)方法。1.2 課程設(shè)計的背景及意義現(xiàn)如今高等院校的招生人數(shù)越來越多,必然就會有大量的學(xué)生信息、教師信息及課程信息需要處理。如果只靠人力來完成,這將會變成一項非常繁瑣、復(fù)雜的工作,而且還有可能出現(xiàn)很多意想不到的錯誤,給管理這些數(shù)據(jù)帶來了極大的不便,越來越不適合高校的發(fā)展需要。教務(wù)管理系統(tǒng)是一個龐大而復(fù)雜的系統(tǒng),它包括對教師信息的管理,對課程資料的管理,對學(xué)生信息的管理和對學(xué)生成績的管理等主要功能。教務(wù)管理系統(tǒng)是每所高校的一項必不可少的內(nèi)容,它的好壞直接影響到學(xué)校的主要工作,此系統(tǒng)一旦癱瘓,不僅會影響到學(xué)

8、校的每一位學(xué)生,學(xué)校也會因此受到非常嚴(yán)重的損失。隨著我校近幾年來的快速發(fā)展,辦學(xué)模式多元化,在校學(xué)生規(guī)模不斷擴大,為了加速對教務(wù)管理的計算機化,我校需要開發(fā)出符合我校實際的教務(wù)管理系統(tǒng),為學(xué)校教學(xué)管理提供一個快速、簡單規(guī)范的管理平臺,同時也方便教員查詢相關(guān)信息,提高信息傳播速度,擴大信息共享范圍。所以,現(xiàn)在設(shè)計一個功能完整、操作簡單以及界面友好的教務(wù)管理系統(tǒng)變得非常重要。通過這個系統(tǒng),管理員能夠?qū)處熜畔?、課程信息、學(xué)生信息和學(xué)生成績進行查詢、添加、修改和刪除等操作,用戶也可以對自己的基本信息進行修改,學(xué)生還可以用該系統(tǒng)進行網(wǎng)上選課和成績查詢,非常的方便。因此,本系統(tǒng)開發(fā)的總體目標(biāo)就是在教務(wù)管

9、理中實現(xiàn)信息管理的系統(tǒng)化、自動化,減少工作繁瑣度,增加效率、方便性。2 需求分析2.1 系統(tǒng)需求通過調(diào)查,要求系統(tǒng)需要有以下功能: 由于操作人員的計算機知識普遍較差,要求有良好的人機界面; 由于該系統(tǒng)的使用對象多,要求有較好的權(quán)限管理; 原始數(shù)據(jù)修改簡單方便,支持多條件修改 方便的數(shù)據(jù)查詢,支持多條件查詢; 在相應(yīng)的權(quán)限下,刪除數(shù)據(jù)方便簡單,數(shù)據(jù)穩(wěn)定性好; 數(shù)據(jù)計算自動完成,盡量減少人工干預(yù);2.2 可行性分析由于本系統(tǒng)管理的對象單一,都是在校學(xué)生,且每個數(shù)據(jù)內(nèi)容具有較強的關(guān)聯(lián)性,涉及的計算過程不是很復(fù)雜。因此,比較適合于采用數(shù)據(jù)庫管理。且學(xué)校用于學(xué)生管理的微機都是piii以上的機器,在存儲量

10、、速度方面都能滿足數(shù)據(jù)庫運行的要求。在技術(shù)難度方面,由于有指導(dǎo)老師的指導(dǎo)和相關(guān)參考文獻,特別是網(wǎng)上資料,特別是參考其它程序的功能,因此完全可以實現(xiàn)。本系統(tǒng)的設(shè)計是在window xp操作系統(tǒng)環(huán)境下,使用vs開發(fā)成功的。在開發(fā)過程中,如何選擇數(shù)據(jù)庫管理是一個重要的問題,目前,數(shù)據(jù)庫產(chǎn)品較多、開發(fā)工具也很多。每種產(chǎn)品都具有各自的特點和適用范圍,因此,在選擇數(shù)據(jù)庫時,應(yīng)考慮數(shù)據(jù)庫應(yīng)用的特點及適用范圍,在選擇開發(fā)工具時也考慮它的健壯性、可移性、安全性等問題。2.3 用戶要求2.3.1 信息需求教務(wù)管理系統(tǒng)涉及的實體有:l 教師工作證號、姓名、職稱、電話等;l 學(xué)生學(xué)號、姓名、性別、出生年月等;l 班級

11、班號、最低總學(xué)分等;l 系系代號、系名和系辦公室電話等;l 課程課序號、課名、學(xué)分、上課時間及名額等。這些實體之間的聯(lián)系如下:l 每個學(xué)生都屬于一個班,每個班都屬于一個系,每個教師也都屬于一個系。l 每個班的班主任都由一名教師擔(dān)任。l 一名教師可以教多門課,一門課可以有幾位主講老師,但不同老師講的同一門課其課序號是不同的(課序號是唯一的)。l 一名同學(xué)可以選多門課,一門課可被若干同學(xué)選中。l 一名同學(xué)選中的課若已學(xué)完,應(yīng)該記錄有相應(yīng)成績。2.3.2 處理需求教務(wù)系統(tǒng)主要提供數(shù)據(jù)維護、選課和信息查詢。其中常見的查詢有:系統(tǒng)中各對象的基本信息查詢。 查詢指定班、系的學(xué)生信息(名單、人數(shù)等)。查詢學(xué)

12、生的成績、學(xué)分情況。查詢教師授課情況和學(xué)生選課情況。2.3.3 安全性與完整性要求l 安全性要求:1.系統(tǒng)應(yīng)設(shè)置訪問用戶的標(biāo)識以鑒別是否是合法用戶,并要求合法用戶設(shè)置其密碼,保證用戶身份不被盜用;2.系統(tǒng)應(yīng)對不同的數(shù)據(jù)設(shè)置不同的訪問級別,限制訪問用戶可查詢和處理數(shù)據(jù)的類別和內(nèi)容;3.系統(tǒng)應(yīng)對不同用戶設(shè)置不同的權(quán)限,區(qū)分不同的用戶,如學(xué)生,教師,系統(tǒng)管理員。l 完整性要求:1.各種信息記錄的完整性,關(guān)鍵信息記錄內(nèi)容不能為空;2.各種數(shù)據(jù)間相互的聯(lián)系的正確性;3.相同的數(shù)據(jù)在不同記錄中的一致性。2.4 需要的信息管理模塊1、學(xué)生信息管理該模塊是教務(wù)工作人員進行對學(xué)生信息的管理,進行學(xué)生信息的添加、

13、修改、刪除。2、教師信息管理教務(wù)工作人員通過此模塊來管理教師信息,包括教師信息的添加、修改、刪除等。信息的添加時,需要驗證教師的編號是否重復(fù);刪除和和修改學(xué)生信息,和學(xué)生信息管理模塊相同。3、 院系管理此模塊是用來管理院系的信息,包括班級院系的添加,修改,刪除等。在進行信息的添加時,需要進行班級的編號是否重復(fù)的檢查,如院系編號重復(fù)則對用戶進行提示,不重復(fù)則添加成功。院系管理模塊的刪除和修改和學(xué)生信息管理模塊相同。4、 課程信息管理教務(wù)工作人員通過該模塊來管理課程的基本信息,包括課程信息的添加,修改,刪除和班級課程的設(shè)置等,具體做法同前面的模塊。5、 成績管理教務(wù)工作人員通過該模塊來進行學(xué)生成績

14、的管理,在進行學(xué)生成績的添加時,可用它來為學(xué)生設(shè)置所在班級的課程表來直接輸入成績。6、 綜合查詢通過該模塊可以查詢教務(wù)所需要的各種信息。如學(xué)生信息查詢提供了包括學(xué)生學(xué)號、姓名、所在班級、班主任名字和宿舍等信息,學(xué)生信息進行查詢的各種查詢條件,用戶可以根據(jù)單個的查詢條件或者它們的組合來進行查詢。同時,在查詢的時候還提供了進行模糊查詢的功能,即該模塊能夠利用讀者輸入的非完整的查詢條件進行查詢,這樣更加方便了用戶的查詢管理。綜合查詢模塊包括了學(xué)生信息查詢、教師信息查詢、班級信息查詢、院系信息查詢、課程信息查詢和成績查詢等各種功能查詢。3 概念結(jié)構(gòu)設(shè)計3.1設(shè)計分析在概念結(jié)構(gòu)設(shè)計中,我采用自底向上設(shè)計

15、概念結(jié)構(gòu)的方法。即第一步抽象數(shù)據(jù)并設(shè)計局部視圖,第二步是集成局部視圖,得到全局的概念結(jié)構(gòu)。3.2概念模型設(shè)計3.2.1局部概念結(jié)構(gòu)設(shè)計(1)、系內(nèi)的關(guān)系模式圖工資1n1n1n教師班級屬于最低總學(xué)分班號電話郵箱姓名工作證號系系辦公室電話系名系代號屬于工作學(xué)生學(xué)號年齡性別姓名系代號 圖3-1 系內(nèi)關(guān)系模式圖(2)、選課系統(tǒng)的關(guān)系模式圖選修期中成績平時成績最后成績總評成績期末成績年齡學(xué)號課名學(xué)分課序號nm姓名課程學(xué)生名額性別系代號圖3-2 選課系統(tǒng)的關(guān)系模式圖課序號課名(3)、教師授課系統(tǒng)關(guān)系模型圖授課工資教師電話郵箱姓名工作證號課程n1名額學(xué)分圖3-3 教師授課系統(tǒng)關(guān)系模型圖(4)、教師與班級的關(guān)

16、系模型圖課名班級負責(zé)最低總學(xué)分班號教師電話工資姓名工作證號n1郵箱圖3-4 教師與班級的關(guān)系模型圖3.2.2 全局概念結(jié)構(gòu)模型(e-r圖)選修平時成績最后成績總評成績期中成績期末成績課名課序號學(xué)分年齡學(xué)號姓名nm課程學(xué)生名額性別n系代號屬于n1課名班號授課負責(zé)班級n最低總學(xué)分n屬于111工作n1工資系教師系代號系名系辦公室電話電話姓名工作證號郵箱圖3-5 全局概念結(jié)構(gòu)模型圖4 邏輯結(jié)構(gòu)設(shè)計關(guān)系模式的設(shè)計與優(yōu)化e-r圖向關(guān)系模型的轉(zhuǎn)換:1 “教師”實體對應(yīng)的關(guān)系模式: 教師(工作證號,姓名,工資,電話,郵箱,系代號)代碼表示為:teacher(tno. tname. salary. tel. e

17、mail. dno)其中,工作證號為其候選碼,又因為教師與系別之間是n:1的工作關(guān)系,經(jīng)過與系別關(guān)系模式的合并后,系別號dno成為教師關(guān)系模式的外碼,存在的關(guān)系依賴為tno ( tname,salary,tel,email,dno),不存在對候選碼的部分依賴與傳遞依賴,所以滿足bcnf。2 “學(xué)生”實體對應(yīng)的關(guān)系模式: 學(xué)生(學(xué)號,姓名,性別,年齡,班號,系代號) 代碼表示:student ( sno, sname, ssex, sage. class .dno)其中,學(xué)號為其候選碼,又因為學(xué)生與班級之間是n:1的屬于關(guān)系,經(jīng)過與班級關(guān)系模式的合并后,班號class成為學(xué)生關(guān)系模式的外碼,存在

18、的關(guān)系依賴為sno(sname,ssex.sage.class. dno),class dno,存在對候選碼的傳遞依賴,所以滿足2nf.3 系(系代號,系名,系辦公室電話) 代碼表示:sdept ( dno, dname, dphone ) 系代號為候選碼,存在的函數(shù)依賴為dno (dname,dphone),且不存在部分依賴與傳遞依賴,所以滿足bcnf。4 “選修”聯(lián)系對應(yīng)的關(guān)系模式: 選課(學(xué)號,課序號,最后成績,平時成績,期中成績,期末成績,) 代碼表示:sc ( sno, cno,grade. daigrade. midbrade. lasgrade,)此為m:n聯(lián)系“選修”所對應(yīng)的關(guān)

19、系模式。sno和cno均為外碼。存在的函數(shù)依賴為完全函數(shù)依賴(sno,cno) (grade.daigrade. midbrade. lasgrade. fingrade),且不存在部分依賴與傳遞依賴,所以滿足bcnf。5 “課程”實體對應(yīng)的關(guān)系模式:課程(課序號,課名,學(xué)分,名額,工作證號)代碼表示:course ( cno, cname, credit, cnum, tno )其中,課號為其候選碼,又由于課程與教師之間是n:1的授課關(guān)系,所以經(jīng)過關(guān)系模式的合并后,教師的工作證號被合并為課程關(guān)系模式中的外碼。存在的函數(shù)依賴為cno (cname,credit,cnum,tno),且不存在對候

20、選碼的部分依賴和傳遞依賴,所以,滿足bcnf。6 “班級”實體對應(yīng)的關(guān)系模式:班級(班號,最低總學(xué)分,工作證號,系代號)代碼表示:class ( class, ccredit, tno. dno )其中,班號為其候選碼,又由于班級與系別之間是n:1的“屬于”關(guān)系,經(jīng)過“班級”與“系別”兩個實體關(guān)系模式的合并后,系號被合并為班級對應(yīng)的關(guān)系模式的外碼。而班級與教師之間是n:1的“負責(zé)”關(guān)系,所以按照規(guī)定,教師的工作證號也被合并為班級的外碼。存在的函數(shù)依賴為class (ccredit, tno.dno ),其中class tno,而tno dno,即存在對候選碼的傳遞依賴,所以只滿足2nf。5 物

21、理結(jié)構(gòu)設(shè)計5.1 數(shù)據(jù)表的設(shè)計根據(jù)實體屬性圖可以建立以下各表,建表的同時定義表有關(guān)的完整性約束條件。1 學(xué)生基本信息表表5-1學(xué)生基本信息表列名長度類型nulldefault主鍵學(xué)號10char()nonoyes姓名20varchar()nonono性別2char()nonono所在專業(yè)2char()yesnono所屬院系2char()yesnono聯(lián)系電話11char()yesnono2 專業(yè)基本信息表表5-2 專業(yè)基本信息表列名長度類型nulldefault主鍵專業(yè)編號2char()nonoyes專業(yè)名稱20varchar()nonono所屬院系2char()yesnono總學(xué)分5char

22、()yesnono必修學(xué)分5char()yesnono3 學(xué)生成績表表5-3學(xué)生成績表列名長度類型nulldefault主鍵學(xué)號10char()nonono姓名20char()nonono課程名稱10char()nonono學(xué)期學(xué)年3char()yesnono成績2char()yesnono授課教師2char()yesnono4 院系基本信息表表5-4院系基本信息表列名長度類型nulldefault主鍵院系號2char()nonoyes院系名稱20char()yesnono負責(zé)人10char()yesnono教務(wù)管理員10char()yesnono5 教師基本信息表表5-5教師基本信息表列名長

23、度類型nulldefault主鍵教師編號10char()nonoyes姓名20varchar()nonono性別2char()yesnono所屬院系2char()yesnono6 評教基本信息表表5-6評教基本信息表列名長度類型nulldefault主鍵教師編號10char()nonono教師姓名20varchar()yesnono課程編號50varchar()nonono課程名稱10char()yesnono滿意度2char()yesnono7 課程基本信息表表5-7課程基本信息表列名長度類型nulldefault主鍵課程編號20varchar()nonoyes課程名稱10char()non

24、ono任課教師10char()yesnono開設(shè)院系30varchar()yesnono8 班級基本信息表表5-8班級基本信息表列名長度類型nulldefault主鍵班級編號10char()nonoyes班級人數(shù)3char()yesnono所屬院系2char()yesnono9 網(wǎng)上選課基本信息表表5-9網(wǎng)上選課基本信息表列名長度類型nulldefault主鍵課程號50varchar()nonono開課院系30varchar()yesnono已選人數(shù)3char()nonono課程類別1char()yesnono限選人數(shù)3char()yesnono5.2 數(shù)據(jù)庫完整性設(shè)計數(shù)據(jù)庫完整性是指數(shù)據(jù)庫中

25、數(shù)據(jù)的正確性和相容性。數(shù)據(jù)完整性包括三類:實體完整性,參照體完整性和用戶定義完整性。5.2.1 數(shù)據(jù)庫實體的完整性設(shè)計本教務(wù)管理系統(tǒng)數(shù)據(jù)庫的實體有:學(xué)生,教師,專業(yè),院系,教室,考試成績,課程。為保證實體的完整性,將以上所有實體的主屬性的屬性值都設(shè)置為非空。5.2.2 數(shù)據(jù)庫參照完整性設(shè)計1、學(xué)生與課程選修關(guān)系模式學(xué)生信息(學(xué)號,姓名,性別,年齡) 主鍵:學(xué)號課程信息(課程號,課程名稱,學(xué)分)主鍵:課程號選修(學(xué)號,課程號,考試成績)主鍵:學(xué)號,課程號2、學(xué)生與班級的從屬關(guān)系模式:學(xué)生信息(學(xué)號,姓名,班級編號)主鍵:學(xué)號班級信息(班級編號,班級名稱,專業(yè)名稱,院系名稱)主鍵:班級編號3、學(xué)生

26、與考試成績的考試關(guān)系模式學(xué)生信息(學(xué)號,姓名)主鍵:學(xué)號成績信息(成績號,課程編號)主鍵:成績號4、班級與專業(yè)的從屬關(guān)系模式專業(yè)信息(專業(yè)編號,專業(yè)名稱)主鍵:專業(yè)編號班級信息(班級編號,班級名稱,專業(yè)編號)主鍵:班級編號5、專業(yè)與院系的從屬關(guān)系模式院系信息(院系編號,專業(yè)名稱)主鍵:專業(yè)編號專業(yè)信息(專業(yè)編號,專業(yè)名稱,院系編號)主鍵:專業(yè)編號6、教師與課程的授課關(guān)系模式教師(教師編號,姓名) 主鍵:教師編號課程(課程編號,課程名稱)主鍵:課程編號授課(課程名稱,教師編號,課時)主鍵:課程名稱,教師編號5.2.3數(shù)據(jù)庫的用戶定義完整性設(shè)計學(xué)生基本信息表:(1)性別必須是男或女(2)身份證號必

27、須是18位(3)所在專業(yè),所屬院系必須是本系統(tǒng)提供的5.3數(shù)據(jù)庫安全性設(shè)計數(shù)據(jù)庫的安全性是指保護數(shù)據(jù)庫以防止不合法的使用所造成的數(shù)據(jù)泄露、更改或破壞。系統(tǒng)安全保護措施是否有效是數(shù)據(jù)庫系統(tǒng)的主要指標(biāo)之一。數(shù)據(jù)庫的安全性和計算機系統(tǒng)的安全性,包括操作系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)的安全性是緊密聯(lián)系、相互支持的。 信息系統(tǒng)盡管功能強大,技術(shù)先進,但由于受到自身體系結(jié)構(gòu),設(shè)計思路以及運行機制 等限制,也隱含許多不安全因素。常見因素有:數(shù)據(jù)的輸入,輸出,存取與備份,源程序以及應(yīng)用軟件,數(shù)據(jù)庫,操作系統(tǒng)等漏洞或缺陷,硬件,通信部分的漏洞,企業(yè)內(nèi)部人員的因素,病毒,“黑客”等因素。因此,為使本系統(tǒng)能夠真正安全,可靠,穩(wěn)定地

28、工作,必須考慮如下問題:為保證安全,不致使系統(tǒng)遭到意外事故的損害,系統(tǒng)因該能防止火,盜或其他形式的人為破壞。 1) 系統(tǒng)要能重建2) 系統(tǒng)應(yīng)該是可審查的3) 系統(tǒng)應(yīng)能進行有效控制,抗干擾能力強4) 系統(tǒng)使用者的使用權(quán)限是可識別的6 應(yīng)用程序設(shè)計6.1 系統(tǒng)功能模塊圖本系統(tǒng)設(shè)計的并不復(fù)雜,模塊劃分也比較清楚。通過對不同的功能進行分析,就可以得到系統(tǒng)的模塊劃分:登錄管理模塊,又分為管理員登錄、教師登錄和學(xué)生登錄三個子模塊;管理員模塊,包括對教師信息、課程信息、學(xué)生信息和學(xué)生成績進行查詢、添加、修改及刪除等子模塊; 教師模塊,包括對個人信息的查詢及密碼的修改、課表的查詢等子模塊; 學(xué)生模塊,包括對個

29、人信息的查詢及密碼的修改、網(wǎng)上選課、課表的查詢和個人成績的查詢等子模塊教務(wù)管理系統(tǒng)學(xué)生教師管理員登錄管理成績查詢網(wǎng)上選課密碼修改課表查詢個人信息查詢課表查詢密碼修改個人信息查詢學(xué)生成績管理學(xué)生信息管理課程信息管理教師信息管理學(xué)生登錄教師登錄管理員登錄修改學(xué)生信息添加學(xué)生信息查詢學(xué)生信息刪除課程信息修改課程信息添加課程信息查詢課程信息刪除教師信息修改教師信息添加教師信息查詢教師信息刪除學(xué)生信息刪除學(xué)生成績修改學(xué)生成績添加學(xué)生成績查詢學(xué)生成績 圖6-1 系統(tǒng)模塊圖6.2系統(tǒng)界面1 系統(tǒng)的主界面圖6-2 系統(tǒng)主界面部分設(shè)計代碼如下:namespace 教務(wù)管理系統(tǒng)public mainform()i

30、nitializecomponent();protected override void dispose( bool disposing )if( disposing )if (components != null) components.dispose();base.dispose( disposing );private bool checkchildfrmexist(string childfrmname)foreach(form childfrm in this.mdichildren)if(childfrm.name = childfrmname) if(childfrm.windo

31、wstate = formwindowstate.minimized)childfrm.windowstate = formwindowstate.normal;childfrm.activate();return true;return false;private void menuitem2_click(object sender, system.eventargs e)if (this.checkchildfrmexist("classinfo") = true)return;classinfo newfrm=new classinfo();newfrm.mdipar

32、ent = this;newfrm.show();private void menuitem3_click(object sender, system.eventargs e)if (this.checkchildfrmexist("studentinfo") = true)return;studentinfo newfrm=new studentinfo();newfrm.mdiparent = this;newfrm.show();private void menuitem4_click(object sender, system.eventargs e)if (thi

33、s.checkchildfrmexist("courseinfo") = true)return;courseinfo newfrm=new courseinfo();newfrm.mdiparent = this;newfrm.show();private void menuitem6_click(object sender, system.eventargs e)if (this.checkchildfrmexist("courseelect") = true)return;courseelect newfrm=new courseelect();n

34、ewfrm.mdiparent = this;newfrm.show();private void menuitem7_click(object sender, system.eventargs e) if (this.checkchildfrmexist("curriculumschedule") = true) return; curriculumschedule newfrm=new curriculumschedule("");newfrm.mdiparent = this;newfrm.show();private void menuitem8

35、_click(object sender, system.eventargs e)if (this.checkchildfrmexist("scoreinput") = true)return;scoreinput newfrm=new scoreinput();newfrm.mdiparent = this;newfrm.show();private void menuitem11_click(object sender, system.eventargs e)this.close();2學(xué)生選課界面界面圖6-3 學(xué)生選課界面部分程序代碼如下:private void c

36、ourseelect_load(object sender, system.eventargs e)datagrid1.datasource=this.electtable;string strconn="workstation id=localhost;integrated security=sspi;database=eisbook;"sqlconnection cn=new sqlconnection(strconn);cn.open();string sql="select a.課序號,a.課程編號,b.課程名稱,b.教師,b.開課系別,"+&q

37、uot;a.上課地點,a.上課時間天,a.上課時間節(jié),b.拼音碼"+" from 課程表a,課程信息b"+" where (b.本學(xué)期課程='y')and(a.課程編號=b.課程編號)"sqldataadapter da2=new sqldataadapter(sql,cn);da2.fill(this.coursetable);this.dv=coursetable.defaultview;datagrid2.datasource=dv;private void showinfo()/string strconn="

38、workstation id=localhost;integrated security=sspi;database=eisbook;"sqlconnection cn=new sqlconnection(strconn);cn.open();sqlcommand cmd=cn.createcommand();cmd.commandtext="select a.姓名,b.班級名稱,a.學(xué)籍編號from 學(xué)生信息a,班級信息b "+"where(a.班級編號=b.班級編號)and(學(xué)號='"+txt1.text.trim()+"

39、')"sqldatareader dr=cmd.executereader();dr.read();if(!dr.hasrows)messagebox.show("無此學(xué)生,請重新輸入學(xué)號","提示",messageboxbuttons.ok,messageboxicon.stop);dr.close();return;if(dr.getvalue(2).tostring().trim()!="1")messagebox.show("該學(xué)生并非在籍學(xué)生,不能選課","提示",m

40、essageboxbuttons.ok,messageboxicon.stop); return;txt2.text=dr.getvalue(0).tostring().trim();txt3.text=dr.getvalue(1).tostring().trim();dr.close();string sql="select a.學(xué)號,a.課序號,b.課程名稱,b.教師,"+"b.開課系別,c.上課時間天,c.上課時間節(jié),c.上課地點"+" from 選課表a,課程信息b,課程表c"+" where(a.課序號=c.課序號

41、)and('200400000'+b.課程編號=a.課序號)"+"and(a.學(xué)號='"+txt1.text.trim()+"')"sqldataadapter da=new sqldataadapter(sql,cn);da.fill(this.electtable);this.studentid=txt1.text.trim();this.stduentname=txt2.text.trim();btnelect.enabled=true;btndelete.enabled=true;btnview.enab

42、led=true;private void btnelect_click(object sender, system.eventargs e)if(dv.count=0)messagebox.show("可選課表為空,無法選課","提示",messageboxbuttons.ok,messageboxicon.stop);return;string courseid=datagrid2datagrid2.currentcell.rownumber,0.tostring().trim();string courseday=datagrid2datagrid

43、2.currentcell.rownumber,6.tostring().trim();string coursesec=datagrid2datagrid2.currentcell.rownumber,7.tostring().trim();foreach(datarow arow in this.electtable.rows)if(arow"課序號".tostring().trim()=courseid)messagebox.show("所選課程已經(jīng)在課程表中","課程重復(fù)",messageboxbuttons.ok,messa

44、geboxicon.stop);return;if(arow"上課時間天".tostring().trim()=courseday&&arow"上課時間節(jié)".tostring().trim()=coursesec)string msg="所選課程和已選課程:"+arow"課程名稱".tostring().trim()+" 上課時間沖突"messagebox.show(msg,"時間沖突",messageboxbuttons.ok,messageboxicon.

45、stop);return;string strconn="workstation id=localhost;integrated security=sspi;database=eisbook;"sqlconnection cn=new sqlconnection(strconn);cn.open();sqlcommand cmd=cn.createcommand();cmd.commandtext="insert into 選課表(學(xué)號,課序號) values('"+this.studentid+"','"+c

46、ourseid+"')"cmd.executenonquery();this.electtable.clear();string sql="select a.學(xué)號,a.課序號,b.課程名稱,b.教師,"+"b.開課系別,c.上課時間天,c.上課時間節(jié),c.上課地點"+" from 選課表a,課程信息b,課程表c"+" where(a.課序號=c.課序號)and('200400000'+b.課程編號=a.課序號)"+"and(a.學(xué)號='"+th

47、is.studentid+"')"sqldataadapter da=new sqldataadapter(sql,cn);da.fill(this.electtable);3 學(xué)生信息的查詢界面圖6-4 學(xué)生信息的增加、刪除、修改部分代碼如下:namespace 教務(wù)管理系統(tǒng)protected override void dispose( bool disposing )if( disposing )if(components != null)components.dispose();base.dispose( disposing );protected void

48、 toolbar1_buttonclick(object sender, system.windows.forms.toolbarbuttonclickeventargs e)if (e.button.tooltiptext = "首記錄")this.datagrid1.unselect(cmorders.position); /取消原選中的行cmorders.position = 0;this.datagrid1.select(cmorders.position); /選中當(dāng)前行this.datagrid1.currentrowindex = cmorders.posit

49、ion; /移動表頭指示圖標(biāo)return;if (e.button.tooltiptext = "上一記錄")if (cmorders.position >= 0)this.datagrid1.unselect(cmorders.position); cmorders.position-;this.datagrid1.select(cmorders.position); this.datagrid1.currentrowindex = cmorders.position; return;if (e.button.tooltiptext = "下一記錄")if (cmorders.position <= cmorders.count-1)this.datagrid1.unse

溫馨提示

  • 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

提交評論