版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
年4月19日選課管理系統(tǒng)文檔僅供參考,不當(dāng)之處,請聯(lián)系改正。數(shù)學(xué)與計算機學(xué)院課程設(shè)計說明書課程名稱:JAVA數(shù)據(jù)庫網(wǎng)絡(luò)綜合課程設(shè)計課程代碼:題目:選修課程管理系統(tǒng)年級/專業(yè)/班:級計科3班學(xué)生姓名:徐茂淋學(xué)號:31開始時間:年12月2日完成時間:年12月28日課程設(shè)計成績:學(xué)習(xí)態(tài)度及平時成績(20)技術(shù)水平與實際能力(20)完成情況(20)創(chuàng)新(5)說明書(計算書、圖紙、分析報告)撰寫質(zhì)量(35)總分(100)指導(dǎo)教師簽名:年月日數(shù)學(xué)與計算機學(xué)院課程設(shè)計任務(wù)書(/第1學(xué)期)專業(yè):計算機科學(xué)與技術(shù)年級:課程名稱:JAVA數(shù)據(jù)庫網(wǎng)絡(luò)綜合課程設(shè)計課程代碼:一、設(shè)計題目選修管理系統(tǒng)二、主要內(nèi)容調(diào)查學(xué)校教務(wù)處,設(shè)計用于管理全校學(xué)生選修課活動的系統(tǒng)。主要功能有:全校選修計劃課程管理;全校選修開課課程管理;全校學(xué)生選課管理;全校選修課成績管理;打印報表;系統(tǒng)維護,如數(shù)據(jù)安全管理(含備份與恢復(fù))、操作員管理、權(quán)限設(shè)置等;要求:設(shè)計學(xué)生選課錄入界面及學(xué)生選課查詢界面;設(shè)計課程輸入界面和學(xué)生選課表及課程選修情況查詢界面;根據(jù)學(xué)生庫和課程庫,輸出學(xué)生課程表(選課沖突時按學(xué)號分配課程);三、具體要求對系統(tǒng)作需求分析和數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計。設(shè)計出ER模型,并完整標(biāo)明每個實體型的相關(guān)屬性,推薦使用Erwin實現(xiàn)。利用前臺開發(fā)工具,完成對每個實體型中實體數(shù)據(jù)的查詢和編輯操作,并提供相應(yīng)的界面。源代碼格式規(guī)范,注釋不少于三分之一.提交完整程序代碼、課程設(shè)計報告及相關(guān)文檔;給出系統(tǒng)需求分析和數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計;總結(jié)開發(fā)語言與后臺數(shù)據(jù)庫之間的連接形式;總結(jié)程序開發(fā)過程中系統(tǒng)函數(shù)、存儲過程、觸發(fā)器等后臺數(shù)據(jù)庫對象在開發(fā)過程中的調(diào)用情況(如果沒有使用,可不寫);設(shè)計中遇到的問題,設(shè)計的心得體會;調(diào)試所遇到的問題等。四、成果及應(yīng)提交材料1.源程序一份2.課程設(shè)計報告一份五、主要技術(shù)路線提示后臺推薦采用SQLserver或Oracle;前臺開發(fā)環(huán)境為JAVA。用前臺開發(fā)工具開發(fā)相應(yīng)系統(tǒng),學(xué)習(xí)開發(fā)工具與數(shù)據(jù)庫的連接,可采用ADO,ODBC,OLE
DB或JDBC連接數(shù)據(jù)庫,并調(diào)用系統(tǒng)存儲過程、自定義存儲過程、函數(shù)等。六、進度安排第12周:數(shù)據(jù)庫系統(tǒng)概念模型、數(shù)據(jù)模型設(shè)計,創(chuàng)立數(shù)據(jù)庫以及相關(guān)對象;第13周:前臺程序開發(fā),撰寫報告,接受檢查。七、推薦參考資料1.王珊、薩師煊,數(shù)據(jù)庫系統(tǒng)概論,高等教育出版社..52.李剛等,Java程序員之旅--Java數(shù)據(jù)庫技術(shù)詳解,化學(xué)工業(yè)出版社,.43、姜中華,劉小春,Java數(shù)據(jù)庫應(yīng)用程序設(shè)計,機械工業(yè)出版社,.44、軟件開發(fā)技術(shù)聯(lián)盟,JavaWeb開發(fā)實踐,清華大學(xué)出版社,.9指導(dǎo)教師簽名日期年月日系主任審核日期年月日目錄1.相關(guān)專業(yè)背景功能12.需求分析43.概念模型與E-R圖__________________________________134.E-R模型轉(zhuǎn)換145.?dāng)?shù)據(jù)庫設(shè)計與建立176、連接數(shù)據(jù)庫237.個人總結(jié)248.參考文獻25一、選修課管理系統(tǒng)的相關(guān)背景功能選修課管理系統(tǒng)是一個面向?qū)W校教務(wù)管理人員、教師和學(xué)生并為其提供服務(wù)的管理系統(tǒng)。選修課管理系統(tǒng)所經(jīng)歷的三個階段一、沒有電腦的年代,網(wǎng)上選課根本不存在,當(dāng)時學(xué)生根據(jù)自己的愛好興趣等方面,先選擇相應(yīng)的課程,然后由班級上報院系,再經(jīng)過人工整理所上報的信息的辦法,決定每個人的選課信息以及任課老師所教的課程,也就是說幾乎談不上選修課管理系統(tǒng)這么一說。二、每個院系有了為數(shù)不多的幾臺電腦后,班級上報院系的信息,由院系先在電腦上登記,最后交給教務(wù)處,教務(wù)處經(jīng)過選修課管理系統(tǒng)(還不夠完善),經(jīng)過審核決定最終結(jié)果并公布;三、電腦普及率很高,也就是現(xiàn)在這樣,網(wǎng)上選課已不成問題,教務(wù)處直接經(jīng)過選修課管理系統(tǒng),了解與審核選課信息,最終決定最后的結(jié)果并公布。有關(guān)選修課的概念與定義選修課與“必修課”相對。主要指高等學(xué)校和中等專業(yè)學(xué)校中學(xué)習(xí)某一專業(yè)的學(xué)生能夠有選擇地學(xué)習(xí)的課程。在教學(xué)計劃中一般不作硬性規(guī)定。分限制性選修課程(某些特定專業(yè)指定選修課程,對該專業(yè)來說可視為必修課)和非限制性選修課程(任意專業(yè)選修課程)兩種。一般大學(xué)的課程都分為校定必修,院定必修,限選課和任選課這四種,你能夠根據(jù)你的愛好來選擇選修課,也能夠選一些專業(yè)方面的課程來修。選修課不能全都選,學(xué)校有規(guī)定一學(xué)期最高能修多少個學(xué)分,你不能超出這個限制。開設(shè)選修課的意義選修課的開設(shè)是基于社會對復(fù)合型人才的需求,旨在加強大學(xué)生人文素質(zhì)和科學(xué)素質(zhì)的養(yǎng)成和提高,培養(yǎng)全面發(fā)展的高素質(zhì)人才。要對學(xué)生的公共選修課進行管理,每學(xué)期由教務(wù)處依據(jù)教學(xué)計劃列出所開設(shè)的選修課程,學(xué)生自主選課,教務(wù)處根據(jù)選課情況進行調(diào)整,最后確定選修各門課程的學(xué)生名單,并對選修課進行排課和對選修課成績進行登記??稍O(shè)置學(xué)生可選修的課程范圍以及選修的約束條件??芍付ǚ秶鷥?nèi)的學(xué)分約束及課程門數(shù)約束,可指定選修課教師的開設(shè)班級的約束條件,開設(shè)班級的人數(shù)限制。約束條件將作為學(xué)生在網(wǎng)上選課審核的標(biāo)準(zhǔn)。應(yīng)實時顯示選課沖突信息。網(wǎng)上選課的好處:大學(xué)期間總會有很多公共選修課,以往的選課方法是隨堂報名。這種方法雖然直接,可是造成選課的盲目性,有些課堂選課時人滿為患,有些課堂無人選課。原因是傳統(tǒng)的選課方法沒有預(yù)見性,大家沒有事先協(xié)調(diào)好。使用了網(wǎng)上選課系統(tǒng)以后,能夠在開課前就在網(wǎng)上選課,每個學(xué)生的課程在開課前就確定好,不用浪費體力去選課,還能夠使教學(xué)資源合理平均地分配。
學(xué)校的選修課網(wǎng)上選課報名問題:教師網(wǎng)上登記選修課(課程審核)學(xué)生網(wǎng)上選課報名名單調(diào)整導(dǎo)出全校選課報名報表等等選修課管理系統(tǒng)的功能1.選課。學(xué)生能夠在網(wǎng)上實現(xiàn)正常學(xué)期的本專業(yè)本年級推薦選課、本院系開設(shè)課程、體育課、政治課、公共英語課、文科計算機課、通選課和公選課的選課;2.成績查詢。學(xué)生能夠在網(wǎng)上快速、便捷地查詢到自己所有學(xué)期的課程成績(包括本院系所學(xué)課程成績、輔修/雙學(xué)位成績)。3.選課情況查詢。學(xué)生從網(wǎng)上就能夠了解自己的選課情況(包括正常學(xué)期和暑期學(xué)校的選課),避免了許多不必要的麻煩。4.退課情況查詢。學(xué)生能夠清楚地查看到自己退課的時間和所用的IP地址。5.體育課評估。6.修改密碼。此功能更加完善了系統(tǒng)的功能。7.用戶注銷。不但方便用戶退出系統(tǒng)重新進行別的操作,而且更為重要的是它能夠及時保證用戶在使用此系統(tǒng)時的安全性。
系統(tǒng)設(shè)置:系統(tǒng)管理員配置相關(guān)信息,包括教師登記課程時間范圍,學(xué)生選課時間范圍,每班最多人數(shù),選修課上課日期,選課學(xué)生范圍等;
教師登記課程:開課教師在規(guī)定的時間內(nèi)登記自己要開設(shè)的選修課程;
學(xué)生選課:學(xué)生在規(guī)定的選課時間內(nèi)自由選課報名,在規(guī)定時間內(nèi),能夠退選、補選、改選課程;
選課調(diào)整:學(xué)生選課期截止后,系統(tǒng)管理員能夠根據(jù)學(xué)生本人、班主任或者任課教師的要求針對個別學(xué)生的選課進行調(diào)整,包括強制選課、退選、換選三種;
生成報表:自動生成EXCEL報表,包括學(xué)生本人的選課列表、給班主任的選課名單和給上課教師的報名名單選修課管理系統(tǒng)的使用說明一、學(xué)生選課學(xué)生登陸進行初選,復(fù)選,補退選查詢選課情況,上課時間、地點與上課老師修改登陸密碼,添加或刪除選課的相關(guān)信息查詢成績二、教師查詢教師登陸查詢課程信息(上課時間、地點以及課程是否被取消,查詢選擇自己課程的學(xué)生清單)修改登陸密碼登記學(xué)生成績?nèi)?、管理員對選修課管理設(shè)置學(xué)生可選修的課程范圍以及選課的約束條件添加課程,修改密碼、瀏覽選課情況、關(guān)閉選課人數(shù)不足15的課程對選修課進行排課登記選修課的成績現(xiàn)行選修課管理系統(tǒng)的特點·完全基于瀏覽器的操作界面,操作簡便·靈活的選課管理、靈活選課配置、課程審核設(shè)置、學(xué)生范圍限定等·嚴格的選課匹配·教師限時課程登記·學(xué)生限時網(wǎng)上選課·保證選課學(xué)生在班級之間均勻分布,杜絕過分集中·管理員能夠調(diào)整學(xué)生選課名單·輕松導(dǎo)出各類選課報表預(yù)測選修課管理系統(tǒng)的發(fā)展隨著科學(xué)技術(shù)的不斷進步,電腦將會基本普及,各種系統(tǒng)的完善程度將會大幅提高,上一個新臺階,到那時,我想選修課管理系統(tǒng)也將更靈活,操作更簡單,更人性化與智能化。二、需求分析學(xué)生包含學(xué)號等屬性,經(jīng)過登記系統(tǒng)保存學(xué)生成績的信息。學(xué)生經(jīng)過分組程序分出選修課的學(xué)生名單。課程包含課程號,名稱等屬性。分組信息分出選修課教師,教師包含名稱,教師編號屬性。用戶經(jīng)過SQLSERVER的查詢分析器直接輸入各種操作代碼,其中包括對系統(tǒng)管理員的創(chuàng)立,管理員能夠創(chuàng)立其它管理員權(quán)限,當(dāng)然,系統(tǒng)管理員能夠?qū)λ斜磉M行修改,刪除,增加。具體需求分析如下:選修課管理系統(tǒng)功能圖:選修課管理系統(tǒng)管理員學(xué)生教師選修課管理系統(tǒng)管理員學(xué)生教師學(xué)生成績管理登錄查詢課程信息修改個人信息登記成績選課信息管理成績查詢登錄選課查詢選課情況修改個人信息開設(shè)課程管理學(xué)生成績管理登錄查詢課程信息修改個人信息登記成績選課信息管理成績查詢登錄選課查詢選課情況修改個人信息開設(shè)課程管理系統(tǒng)功能需求:1.開設(shè)課程管理管理員對所開設(shè)的課程進行管理,允許對所開設(shè)的課程進行增加,修改,刪除等。2.查詢能夠按課程名,教師名,學(xué)號等多種方式查詢課程信息。對于學(xué)生的選課信息,學(xué)生只能查詢本人的。3.學(xué)生選課管理學(xué)生根據(jù)所查詢的課程信息,選擇自己所要選修的課程。對于已經(jīng)選擇了,但不希望選修的課程,能夠進行退選。每個學(xué)生最多選修8個學(xué)分。4.用戶信息管理能夠使用系統(tǒng)的每個學(xué)生、教師和管理員每人都有一個ID,管理員能夠?qū)τ脩暨M行增加,刪除,修改等操作。5.學(xué)生成績管理成績管理包括如下功能:(1)成績錄入管理員錄入學(xué)生的成績信息。(2)成績查詢學(xué)生能夠查看自己所選各科課程的成績。教師能夠查詢自己所教課程的學(xué)生成績,并打印報表。參與者用例圖:用戶用戶管理員教師學(xué)生分析參與者:學(xué)生、教師、管理員都是學(xué)校里的人員,有一些相同的屬性,如ID,姓名,部門等,能夠?qū)⑷叩墓残蕴崛〕鰜?,形成一個抽象的參與者——用戶。系統(tǒng)能夠識別三個參與者:學(xué)生,教師和管理員。學(xué)生:查詢課表,選課,查詢考試成績教師:查詢課表,查詢課程成績管理員:管理所開設(shè)的課程,管理用戶,錄入成績,執(zhí)行各種查詢功能。學(xué)生選課的數(shù)據(jù)流圖:選課信息學(xué)號學(xué)號學(xué)號打成績單成績登錄打選課單學(xué)生選課學(xué)生課程學(xué)生選課選課信息選課信息學(xué)號學(xué)號學(xué)號打成績單成績登錄打選課單學(xué)生選課學(xué)生課程學(xué)生選課選課信息成績信息成績單學(xué)生教師選課名單成績單學(xué)生教師選課名單①數(shù)據(jù)項:以“學(xué)號”為例數(shù)據(jù)項名:學(xué)號數(shù)據(jù)項含義:唯一標(biāo)識每一個學(xué)生別名:學(xué)生編號數(shù)據(jù)類型:字符型長度:8取值范圍:00000~99999取值含義:前2位為入年號,后3位為順序編號與其它數(shù)據(jù)項的邏輯關(guān)系:(無)
②數(shù)據(jù)結(jié)構(gòu):以“學(xué)生”為例數(shù)據(jù)結(jié)構(gòu)名:學(xué)生含義說明:是學(xué)籍管理子系統(tǒng)的主體數(shù)據(jù)結(jié)構(gòu),定義了一個學(xué)生的有關(guān)信息組成:學(xué)號,姓名,性別,年齡,所在系
③數(shù)據(jù)流:以“選課信息”為例數(shù)據(jù)流名:選課信息說明:學(xué)生所選課程信息數(shù)據(jù)流來源:“學(xué)生選課”處理數(shù)據(jù)流去向:“學(xué)生選課”存儲組成:學(xué)號,課程號
④數(shù)據(jù)存儲:以“學(xué)生選課”為例數(shù)據(jù)存儲名:學(xué)生選課說明:記錄學(xué)生所選課程的成績編號:(無)流入的數(shù)據(jù)流:選課信息,成績信息流出的數(shù)據(jù)流:選課信息,成績信息組成:學(xué)號,課程號,成績存取方式:隨機存取
⑤處理過程:以“學(xué)生選課”為例處理過程名:學(xué)生選課說明:學(xué)生從可選修的課程中選出課程輸入數(shù)據(jù)流:學(xué)生,課程輸出數(shù)據(jù)流:學(xué)生選課根據(jù)系統(tǒng)需求中的描述,又能夠?qū)⑾到y(tǒng)分為兩個頂層用例:選課管理和成績管理選課管理和成績管理頂層用例圖教師教師管理員選課管理成績管理學(xué)生選課管理用例能夠分解為:1.課程信息查詢:提供按學(xué)生查詢,按任課教師查詢,按課程名查詢等多種查詢方式。2.選課:學(xué)生對自己所選的課程進行管理,包括增加所選課程,刪除所選課程等。3.課程信息管理:管理員對學(xué)校所開設(shè)的課程進行管理,包括增加課程,刪除課程,修改課程信息等。4.用戶管理:為簡化處理,假設(shè)系統(tǒng)從學(xué)生管理系統(tǒng)中獲取學(xué)生信息,從學(xué)校人事管理系統(tǒng)中獲取教師信息。選課管理用例圖:管理員管理員選課課程信息查詢用戶管理學(xué)生課程信息管理教師成績管理用例能夠分解為以下用例:1.
學(xué)生成績查詢學(xué)生查詢自己所選課程的成績。2.
課程成績查詢教師查詢自己所教課程的學(xué)生成績。3.
成績管理管理員錄入或修改學(xué)生成績。學(xué)生成績管理用例圖用戶輸入課程名用戶輸入課程名更新學(xué)生成績啟動成績管理窗口提示輸入課程名查詢課程的選課情況用列表顯示選課學(xué)生檢查成績是否有效更新成績顯示錯誤信息按課程查詢選課信息分析用戶如何登錄到系統(tǒng)中1.2前置條件:無1.3后置條件:如果用例成功,則用戶登錄到系統(tǒng)中。否則,系統(tǒng)狀態(tài)不變。1.4事件流1.4.1基本流(1)當(dāng)用戶開始使用系統(tǒng)時,登錄用例啟動;(2)系統(tǒng)提示用戶輸入用戶名和密碼;(3)用戶提交;(4)系統(tǒng)驗證輸入的用戶名和密碼,用戶登錄成功1.4.2備選流在基本流4中,如果用戶輸入的名字或密碼沒有經(jīng)過驗證,系統(tǒng)提示錯誤信息,用戶能夠重新輸入或中止該用例。用戶登錄用例圖:系統(tǒng)啟動用戶系統(tǒng)啟動用戶系統(tǒng)驗證用戶名和密碼提交提示輸入用戶名和密碼驗證用戶名和密碼顯示錯誤信息正確/錯誤根據(jù)以上對系統(tǒng)的總體需求分析,我們就能夠?qū)x修課管理系統(tǒng)有個整體的概念。經(jīng)過對各個用例圖的的分析與研究,就能夠?qū)x課管理系統(tǒng)的整個過程有個很具體的把握,而且能夠知道和明白其工作原理與系統(tǒng)處理細節(jié)問題。三、概念模型與E-R圖概念模型介紹:學(xué)生選修課管理系統(tǒng)的流程:首先由教師或系統(tǒng)管理員等有錄入權(quán)限的用戶將各自權(quán)限范圍內(nèi)的信息進行錄入,然后保存信息到數(shù)據(jù)庫中。有權(quán)限的人能夠?qū)@些數(shù)據(jù)庫信息進行修改和刪除。所有用戶均能夠進行信息查詢和統(tǒng)計。數(shù)據(jù)流分析學(xué)生選課管理系統(tǒng)的數(shù)據(jù)流程:首先由教師或系統(tǒng)管理員等有錄入權(quán)限的用戶將各自權(quán)限范圍內(nèi)的信息進行錄入處理,然后保存信息到數(shù)據(jù)庫中。有權(quán)限的人能夠?qū)@些庫信息進行修改和刪除處理。所有用戶均能夠進行信息查詢和統(tǒng)計,結(jié)果能夠報表打印。選修課選課系統(tǒng)主要分為兩大模塊:管理員模塊和一般用戶模塊,管理員能夠是教師也能夠是學(xué)生,不過管理員必須承擔(dān)一定的責(zé)任。管理員模塊又分為對用戶的管理和對選課的管理,對用戶的管理模塊應(yīng)有的功能是對新用戶的添加,對無用用戶的刪除;選課管理模塊應(yīng)有的功能包括新開設(shè)選修課信息的添加,對原有課程信息的修改,對學(xué)校不再開設(shè)的課程進行刪除,一輪選課結(jié)束以后對各科選課人數(shù)歸零。一般用戶模塊既學(xué)生應(yīng)用模塊是該系統(tǒng)最基本的功能模塊,因為此模塊應(yīng)完成訪客登錄的身份驗證,學(xué)生選修公共選修課記錄的添加,對公共選修課信息的查詢,對教師信息的查詢,學(xué)生對自己已經(jīng)選修哪些課進行查詢。因此,按照需要完成的要求又分成了各具體執(zhí)行模塊。學(xué)生學(xué)生學(xué)號姓名性別所在班級所在系年齡備注學(xué)生實體E-R圖教師教師教師號 班級姓名系部備注教師實體E-R圖課程課程所屬系開課時間學(xué)分課程名課程號課程實體E-R圖管理員管理員用戶名密碼登錄類型管理員實體E-R圖整體E-R圖:課程管理員課程管理員學(xué)生信息學(xué)生課程信息課程教師教師信息學(xué)生信息選擇和查詢詢修改管理管理管理管理修改刪除添加學(xué)生信息學(xué)生課程信息課程教師教師信息學(xué)生信息選擇和查詢詢修改管理管理管理管理修改刪除添加學(xué)生學(xué)生管理管理員管理系屬于課程屬于管理屬于教提交選添加成績選課信息教師四、E-R模型轉(zhuǎn)換成關(guān)系數(shù)據(jù)庫E-R模型轉(zhuǎn)換成關(guān)系數(shù)據(jù)庫的一般規(guī)則:將每一個實體轉(zhuǎn)換成一個關(guān)系。所有主碼必須定義非空。對于二元聯(lián)系,按照下列規(guī)則定義外碼:a.一對一聯(lián)系:將”一”表中的主碼作為外碼放在”多”表中。如上圖中的計算機系與教師的關(guān)系,計算機系只有一個系主任。b.弱實體:將父表的主碼作為外碼放在弱實體中。如上圖學(xué)生與親屬的關(guān)系中親屬就是弱實體。c.一對多聯(lián)系:將一個表的主碼作為外碼放在另一個表中。如上圖中的班級與學(xué)生的聯(lián)系。d.多對多聯(lián)系:建立復(fù)合實體,復(fù)合實體的主碼由兩個父實體的主碼復(fù)合組成。如上圖中學(xué)生與課表的關(guān)系就是多對多的聯(lián)系,應(yīng)建立一個復(fù)合實體:成績。設(shè)計關(guān)系模型如下:下劃線為關(guān)系的碼學(xué)生(學(xué)號,姓名,性別,年齡,班級,所在系號,備注)Student(Student_id,Student_name,Student_sex,Student_time,Student_classid,Student_age,Student_else)此為學(xué)生實體對應(yīng)的關(guān)系模式。教師(教師號,姓名,班級,系別,備注)Teacher(Teacher_id,Teacher_name,Teacher_class,Teacher_dept,Teacher_else)此為教師實體對應(yīng)的關(guān)系模式。課程(課程號,課程名,系名,學(xué)分,開課時間,課程表)Course(Course_id,Course_name,Course_time,Class_credit,Course_dept)此為課程實體對應(yīng)的關(guān)系模式。管理員(用戶名,密碼,登錄類型)Manger(Manger_id,Manger_Passwod,Manger_Power)此為管理員實體對應(yīng)的關(guān)系模式。五、數(shù)據(jù)庫設(shè)計與建立在系統(tǒng)中設(shè)立6張表:除了有學(xué)生、教師、課程基本表分別記錄學(xué)生、教師、課程的基本信息外,考慮到便于系統(tǒng)管理員管理學(xué)生用戶,設(shè)計了用戶表,記錄用戶登錄系統(tǒng)時的用戶名、密碼以及權(quán)限。同時對于學(xué)生選課和教師教課都應(yīng)該有記錄,因此設(shè)計了學(xué)生選課和教師教課表,其中學(xué)生選課表里,包含了學(xué)生選課的內(nèi)容和各門課的成績,便于管理員對成績的錄入、修改以及用戶對成績的查詢和檢索:教師教課表的內(nèi)容主要是包含教師所教課程的信息。首先是用戶信息數(shù)據(jù)表(Manger),用于存儲學(xué)生管理系統(tǒng)中所有參與人員的信息,包括教師登錄信息、學(xué)生登錄信息,這樣做的目的是能夠方便系統(tǒng)判斷用戶登錄的類型,以及對用戶類型的統(tǒng)一管理。用戶信息沒有包括太多的內(nèi)容,主要有用戶登錄號、用戶密碼、用戶權(quán)限代碼,讀者能夠根據(jù)自己的具體需要添加字段,表1顯示了表中各個字段的數(shù)據(jù)類型、大小以及簡短描述。表1用戶信息數(shù)據(jù)表(Manger)列名數(shù)據(jù)類型寬度字段描述Manger_idChar10用戶名,設(shè)為主鍵Manger_PasswodChar20用戶登錄本系統(tǒng)時的用戶密碼Manger_PowerInt4用戶的類型,0-本校注冊學(xué)生,1-管理員在系統(tǒng)中,最重要的對象是學(xué)生,系統(tǒng)設(shè)計了學(xué)生信息數(shù)據(jù)表(student),用于存儲本校所有學(xué)生信息,其中包括在校生,也包括已畢業(yè)學(xué)生。表5-7中顯示了表中各個字段的數(shù)據(jù)類型、大小以及簡短描述。表2學(xué)生信息數(shù)據(jù)表(Student)列名數(shù)據(jù)類型寬度字段描述Student_idchar20學(xué)生的學(xué)號,設(shè)為主鍵Student_namechar20學(xué)生姓名Student_sexChar4學(xué)生性別Student_timeChar8學(xué)生入學(xué)時間Student_classidchar50學(xué)生所在班級號Student_ageint4學(xué)生年齡Student_elsechar50備注系統(tǒng)構(gòu)建教師信息數(shù)據(jù)表(teacher)用來存儲本校所有教師信息,教師信息表給出一個較為簡單的結(jié)構(gòu)。表3顯示了表中各個字段的數(shù)據(jù)類型、大小以及簡短描述。表3教師信息數(shù)據(jù)表(teacher)列名數(shù)據(jù)類型寬度字段描述Teacher_idchar5記錄教師號,設(shè)為主鍵Teacher_namechar10記錄教師姓名Teacher_classchar20記錄教師所在班級Teacher_deptchar20記錄教師所在系Teacher_elsechar50備注每一個教師講授什么課程都有記錄,而且一門課可能會有多個老師授課。因此必須包括課程名稱、年度、學(xué)期、班級號等,以便管理員或?qū)W生查詢信息,系統(tǒng)采用教師_課程記錄數(shù)據(jù)表(teacher_course)記錄以上信息。如表4所示表中各個字段的數(shù)據(jù)類型、大小以及簡短描述。表4教師-課程記錄數(shù)據(jù)表(teacher_course)列名數(shù)據(jù)類型寬度字段描述IDInt4教師-課程記錄的惟一ID號,設(shè)為主鍵TeacheridVarchar50教師號CourseidVarchar50教師所任課程號Teacher_classVarchar50教師所教班級號Course_yearChar5年度學(xué)期Course_menInt4教師所任選修課程限報人數(shù)學(xué)生總是離不開課程,系統(tǒng)設(shè)計了課程信息數(shù)據(jù)表(course),用于存儲本校所有課程信息,其中包括課程類型、學(xué)分等。表5顯示了表中各個字段的數(shù)據(jù)類型、大小以及簡短描述。表5課程信息數(shù)據(jù)表(course)列名數(shù)據(jù)類型寬度字段描述Course_idchar50課程號,設(shè)為主鍵Course_namechar50課程名Course_timechar40開課時間Class_creditInt4課程學(xué)分Course_deptchar50課程所在系學(xué)生所學(xué)課程都會有成績,而且每個學(xué)生每一門課只有一個成績。系統(tǒng)設(shè)計了學(xué)生-課程信息數(shù)據(jù)表(student—course),用于存儲本校所有學(xué)生所學(xué)課程信息,表6顯示了表中各個字段的數(shù)據(jù)類型、大小以及簡短描述。表6學(xué)生-課程記錄數(shù)據(jù)表(student_course)列名數(shù)據(jù)類型寬度字段描述IDchar10學(xué)生-課程記錄的惟一ID號,設(shè)為主鍵Studen_idchar10學(xué)生學(xué)號Course_idchar10學(xué)生所學(xué)課程號Stude_gradeInt4學(xué)生成績Course_deptchar50學(xué)生所學(xué)課程所在系系統(tǒng)使用MicrosoftSQLServer建立數(shù)據(jù)庫,庫名為Elective。庫中設(shè)計的六個表使用T-SQL建立數(shù)據(jù)庫Electivecreatedatabaseelectiveon(name='electivedb',filename='e:\database\elective.mdf',size=2,maxsize=10,filegrowth=1)logon(name='electivelog',filename='e:\database\elective_log.ldf',size=1,maxsize=5,filegrowth=1)go使用T-SQL腳本建立學(xué)生信息數(shù)據(jù)表(Student)。createtablestudent(S_id char(20)primarykey,S_name char(40) notnull,S_sex char(4) notnull,S_dept char(20)notnull,S_agechar(8)notnull,S_classidchar(50) notnull,S_else char(50) notnull,)使用T-SQL腳本建立教師信息數(shù)據(jù)表(Teacher)。createtableteacher(T_id char(5)primarykey,T_name char(10)notnull,T_classchar(20) notnull,T_deptchar(20)notnull,T_elsechar(50)notnull,)使用T-SQL腳本建立課程信息數(shù)據(jù)表(Course)。createtablecourse(C_id char(10) primarykey,C_name char(20) notnull,C_time char(40)notnull,C_creditintnotnull,C_dept char(50)notnull,)4、使用T-SQL腳本建立課程信息數(shù)據(jù)表(Student_Course)。createtablestudent_course(IDchar(10) primarykey,S_idchar(10) notnull,C_id char(10)notnull,S_grade intnotnull,C_dept char(50)notnull,)5、使用T-SQL腳本建立課程信息數(shù)據(jù)表(Teacher_Course)。createtableteacher_course(IDchar(10) primarykey,T_idchar(10) notnull,C_id char(10)notnull,C_menintnotnull,T_class char(40)notnull,C_year char(50)notnull,)6、使用T-SQL腳本建立課程信息數(shù)據(jù)表(Manger)。createtablemanger(M_idchar(10) primarykey,M_password char(20)notnull,M_powerintnotnull,)構(gòu)建了數(shù)據(jù)庫的表結(jié)構(gòu)后,接下來創(chuàng)立負責(zé)表中信息查詢、插入、修改、刪除以及授權(quán)的相關(guān)存儲過程(只舉例關(guān)于表Student,Course,Student_Course之間的操作,同理能夠?qū)Ρ韙eacher,Course,Student_Course進行相關(guān)操作)。具體操作如下所示:(一)、查詢基本查詢1、查詢DB_Design課程的課程號和學(xué)分SELECTC_id,C_reditFROMCourseWHEREC_nameLIKE‘DB\_Design’ESCAPE‘\’;2、某些學(xué)生選修課程后沒有參加考試,因此有選修課記錄,但沒有考試成績。查詢?nèi)鄙俪煽兊膶W(xué)生的學(xué)號和相應(yīng)的課程號:SELECTS_id,C_idFROMStudent_CourseWHERES_gradeISNULL;3、查詢所有有成績的學(xué)生學(xué)號和課程號SELECTS_id,C_idFROMStudent_CourseWHERES_gradeISNOTNULL;4、查詢選修了3號課程的學(xué)生的學(xué)號及其成績,查詢結(jié)果按分數(shù)的降序排列SELECTS_id,S_gradeFROMStudent_CourseWHEREC_id=‘3’ORDERBYS_gradeDESC;5、查詢選修了課程的學(xué)生人數(shù)SELECTCOUNT(DISTINCTS_id)FROMStudent_Course6、計算選修了1號課程的學(xué)生平均成績SELECTAVG(S_grade)FROMStudent_CourseWHEREC_id=‘1’;7、求各個課程號及相應(yīng)的選課人數(shù)SELECTC_id,COUNT(S_id)FROMStudent_CourseGROUPBYC_id8、查詢選修了3門以上課程的學(xué)生學(xué)號SELECTS_idFROMStudent_CourseGROUPBYS_idHAVINGCOUNT(*)>3;連接查詢1、查詢每個學(xué)生及其選修課程的情況SELECTStudent.S_id,S_name,S_sex,S_age,S_dept,C_id,S_gradeFROMStudent,Student_CourseWHEREStudent.S_id=Student_Course.S_id;(自然連接)SELECTStudent.*,Student_Course.*FROMStudent,Student_Course;(廣義笛卡爾積連接)2、外連接查詢每個學(xué)生及其選修課程的情況SELECTStudent.S_id,S_name,S_sex,S_age,S_dept,C_id,S_gradeFROMStudent,Student_CourseWHEREStudent.S_id=Student_Course.S_id(*);查詢學(xué)校設(shè)置的所有課程及其選修情況SELECTC_id,C_name,C_redit,S_id,S_gradeFROMCourse,Student_CourseWHERECourse.C_id=Student_Course.C_id(*);3、多表連接例查詢每個學(xué)生的學(xué)號、姓名、選修的課程名及成績SELECTStudent.S_id,S_name,C_nameFROMStudent,Course,Student_CourseWHEREStudent.S_id=Student_Course.S_idANDStudent_Course.C_id=Course.C_id4、帶有IN謂詞的子查詢查詢與“劉晨”在同一個系學(xué)習(xí)的學(xué)生使用嵌套實現(xiàn)此查詢SELECTS_id,S_name,S_deptFROMStudentWHERES_deptIN (SELECTS_dept FROMStudent WHERES_name=‘劉晨’);6、使用嵌套查詢實現(xiàn)查詢選修了課程名為“信息系統(tǒng)”的學(xué)生學(xué)號和姓名SELECTS_id,S_name (3)FROMStudentWHERES_idIN (SELECTS_id (2) FROMStudent_Course WHEREC_idIN (SELECTC_id (1) FROMCourse WHEREC_name=‘信息系統(tǒng)’));(二)、插入插入一條選課記錄(‘95020’,‘1’)INSERTINTOStudent_Course(S_id,C_id)VALUES(‘95002’,‘1’);將一個新學(xué)生記錄插入到Student表中INSERTINTOStudentVALUES(‘95002’,‘陳冬’,‘男’,‘IS’,18);(三)、修改修改某一個元組的值例將學(xué)生95001的年齡改成22歲UPDATEStudentSETS_age=22WHERES_id=‘95001’;(四)、刪除刪除一個或多個元組例刪除學(xué)號為95019的學(xué)生記錄DELETEFROMStudentWHERES_id=‘95019’;刪除計算機系所有學(xué)生的選課記錄DELETEFROMStudent_CourseWHERE‘S_dept’= (SELETES_dept FROMStudent WHEREStudent.S_id=Student_Course.S_id);(五)、授權(quán)授權(quán)GRANT<權(quán)限>[,<權(quán)限>]… [ON<對象類型><對象名>] TO<用戶>[,<用戶>]… [WITHGRANTOPTION];對象對象類型操作權(quán)限屬性列TABLESELECT,INSERT,UPDATE,DELETE,ALLPRIVILEGES基表TABLESELECT,INSERT,UPDATE,DELETE,ALTER,INDEX,ALLPRIVILEGES數(shù)據(jù)庫DATABASECREATETAB1、把查詢Student表的權(quán)限授給用戶wangGRANTSELECTONTABLEStudentTOwang;2、把對Student表和Course表的全部操作權(quán)限授予用戶U2和U3GRANTALLPRIVILIGESONTABLEStudent,CourseTOuser2,user3;3、把對Student_Course表的查詢權(quán)限授予所有用戶GRANTSELECTONTABLEStudent_CourseTOPUBLIC;4、把查詢Student表和修改學(xué)號的權(quán)限授予用戶U4GRANTUPDATE(S_id),SELECTONTABLEStudentTOU4;5、把對Student_Course表的插入權(quán)限授予用戶U5,并允許將此權(quán)限再授予其它用戶GRANTINSERTONTABLEStudent_CourseTOuser5WITHGRANTOPTION;收回權(quán)限1、收回U4用戶修改學(xué)生學(xué)號的權(quán)限REVOKEUPDATE(S_id)ONTABLEStudentFROMU4;2、收回所有用戶對表Student_Course的查詢權(quán)限REVOKESELECTONTABLEStudent_CourseFROMPUBLIC;3、收回U5用戶對表Student_Course的插入權(quán)限REVOKEINSERTONTABLEStudent_CourseFROMU5;六、連接數(shù)據(jù)庫系統(tǒng)為保持良好的可移植性,采用對數(shù)據(jù)庫配置進行統(tǒng)一管理的方法,將程序中用到的所有連接字符串信息統(tǒng)一放于Web.Config配置文檔中,在程序中經(jīng)過這一配置調(diào)用,進行數(shù)據(jù)庫連接。對于數(shù)據(jù)庫調(diào)用字符串,由于數(shù)據(jù)庫使用的是本地數(shù)據(jù)庫,DataSource(數(shù)據(jù)源)設(shè)置為(local);UID(用戶ID)賦值為系統(tǒng)默認的sa:PWD(連接密碼)賦值為空;DATABASE(數(shù)據(jù)庫名稱)設(shè)為我們上一節(jié)中創(chuàng)立的Elective。Web.Config配置文檔的相關(guān)主要代碼如下:<configuration><appSettings><addkey="dsn"value="DataSource=(local);UID=sa;PWD=;DATABASE=Elective"/></appSettings></configuration>在每個需要連接數(shù)據(jù)庫的程序中讀取Web.Config配置文檔中的數(shù)據(jù)庫設(shè)置信息,只要使用如下語句即可。stringstrconn=ConfigurationSettings.AppSettings["dsn"]; SqlConnectioncn=newSqlConnection(strconn); cn.Open();我們只要在程序文件中加入這幾行代碼,就能夠?qū)?shù)據(jù)庫連接字段讀取到字符串strconn中,就可使用所連接的數(shù)據(jù)庫了。12.4.2設(shè)置用戶驗證和授權(quán)在系統(tǒng)中專門建一目錄為:manager,把不允許學(xué)生瀏覽的管理員模塊的所有應(yīng)用程序放入該目錄,以便在Web.Config中控制。先在Web.Config中設(shè)置用戶名和密碼,代碼清單如下:<authenticationmode="Forms"><!--設(shè)定驗證方式為forms(表單)驗證--><formsname="autoCre"loginUrl="login.aspx"protection="All"><!--沒有經(jīng)過驗證時轉(zhuǎn)到login.aspx--><credentialspasswordFormat="Clear"><!--指定密碼為明文--><username="manager"password="123456"/><!--可登錄的用戶名和密碼,密碼也可加密--><username="admin"password="666"/><!--可登錄的用戶名和密碼,密碼也可加密--></credentials></forms></authentication>然后設(shè)置目錄manager的訪問權(quán)限。<locationpath="manager">
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度農(nóng)業(yè)生態(tài)公園綠化景觀施工監(jiān)理合同4篇
- 2025年度冷鏈?zhǔn)称芳庸せ?#生產(chǎn)線冷鏈?zhǔn)称防滏溑渌头?wù)合同4篇
- 二零二五版美術(shù)館東館館舍租賃消防安全管理合同3篇
- 二零二五年度模特形象代言人合同
- 二零二五年度互聯(lián)網(wǎng)數(shù)據(jù)中心運維人員聘用合同范本4篇
- 二零二五年度安置房買賣合同集錦:安置房維修基金管理規(guī)范3篇
- 二零二五年度應(yīng)急救援駕駛員聘用合同4篇
- 二零二五年度儲煤場租賃及煤炭倉儲設(shè)施租賃與維護合同4篇
- 案例1-西南航空公司的核心競爭力
- 二零二五版農(nóng)業(yè)種植項目科技培訓(xùn)與人才培養(yǎng)合同4篇
- (完整版)高考英語詞匯3500詞(精校版)
- 我的家鄉(xiāng)瓊海
- (2025)專業(yè)技術(shù)人員繼續(xù)教育公需課題庫(附含答案)
- 《互聯(lián)網(wǎng)現(xiàn)狀和發(fā)展》課件
- 【MOOC】計算機組成原理-電子科技大學(xué) 中國大學(xué)慕課MOOC答案
- 2024年上海健康醫(yī)學(xué)院單招職業(yè)適應(yīng)性測試題庫及答案解析
- 2024年湖北省武漢市中考語文適應(yīng)性試卷
- 2024-2025學(xué)年廣東省大灣區(qū)40校高二上學(xué)期聯(lián)考英語試題(含解析)
- 非新生兒破傷風(fēng)診療規(guī)范(2024年版)解讀
- 2024-2030年電炒鍋項目融資商業(yè)計劃書
- EDIFIER漫步者S880使用說明書
評論
0/150
提交評論