版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 單位代碼 01 </p><p> 學(xué) 號 080301113 </p><p> 分 類 號 TP393 </p><p> 密 級 </p><p><b> 畢業(yè)設(shè)計說明書</b></p><
2、p> 基于B/S結(jié)構(gòu)的網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn)</p><p> 2010年5 月14日</p><p> 院(系)名稱信息工程學(xué)院</p><p> 專業(yè)名稱計算機(jī)科學(xué)與技術(shù)</p><p> 學(xué)生姓名</p><p> 指導(dǎo)教師</p><p> 基于B/S結(jié)構(gòu)的網(wǎng)上選課系統(tǒng)的設(shè)
3、計與實現(xiàn)</p><p><b> 摘 要</b></p><p> 本論文詳細(xì)介紹了網(wǎng)上選課系統(tǒng)實例的開發(fā)與應(yīng)用,是一個數(shù)據(jù)庫應(yīng)用系統(tǒng)完整的制作過程。主要內(nèi)容有:系統(tǒng)開發(fā)背景、系統(tǒng)概述、需求分析、系統(tǒng)設(shè)計、功能、感受與體會等。其中需求分析中主要對系統(tǒng)的數(shù)據(jù)流程圖進(jìn)行了詳細(xì)描繪,系統(tǒng)設(shè)計中主要描繪出了網(wǎng)上選課系統(tǒng)的模塊設(shè)計圖和該系統(tǒng)數(shù)據(jù)庫的設(shè)計。功能與操作中
4、介紹了對該網(wǎng)上選課系統(tǒng)實例的基本功能。</p><p> 本文通過分析瀏覽器/服務(wù)器結(jié)構(gòu)的特點(diǎn)并結(jié)合選課的實際情況,提出了基于瀏覽器/服務(wù)器結(jié)構(gòu)網(wǎng)上選課系統(tǒng)的基本設(shè)計思想,介紹了系統(tǒng)各功能模塊及數(shù)據(jù)庫的設(shè)計,并給出了部分實現(xiàn)代碼。通過該系統(tǒng),使學(xué)生可以方便地在校園網(wǎng)上進(jìn)行網(wǎng)上選課。該B/S結(jié)構(gòu)的系統(tǒng)在Windows XP系統(tǒng)和VS.NET平臺下開發(fā)完成,使用C#作為ASP.NET的開發(fā)語言,SQL Server
5、 2000作為數(shù)據(jù)庫。系統(tǒng)有較高的安全性和較好的性能。其中連接數(shù)據(jù)庫的字符串可以隨時在web.config里修改,并經(jīng)過編碼加密,增加了靈活性,保護(hù)了數(shù)據(jù)庫的安全。</p><p> 經(jīng)過測試以及在實際使用證明,本文所設(shè)計的教職工檔案管理系統(tǒng)可以滿足學(xué)校人事、管理方面的需要。在滿足需求的同時,也體現(xiàn)出了操作簡便、友好實用、安全可靠等特點(diǎn)。 </p><p> 關(guān)鍵詞:網(wǎng)上選課,ASP.
6、NET,數(shù)據(jù)庫管理系統(tǒng)</p><p> The Design and Implementation of an Online Course-Choosing System Based on B / S structure</p><p><b> Abstract</b></p><p> With the development of
7、 the enrolling number, the data for daily registry is increasing, too. And always we should goto classroom to enroll. Although this method directly,but result in blindness of the course enrollment and registry data proce
8、ssing of the heavy .In order to reduce the work registry ,and better each student to choose their own favorite subjects .This system is special for the on-line course choosing to design both from the aspect of the studen
9、t and the teacher. The student can ch</p><p> This paper gives the basic design idea of the Browser/Server structure based online course elect system by analyzing the characteristic of the Browser/Server st
10、ructure and combining with the actual public elective courses conditions of our school.By using this system,students can elect courses online efficiently.This Browser/Server structure system is developed under VS.NET pla
11、tform in Windows XP operating system, using C# as ASP.NET development language and SQL Server 2000 as the database. This</p><p> Keywords: online course elect, ASP.NET, DBMS</p><p><b> 目
12、 錄</b></p><p><b> 1 緒論1</b></p><p> 1.1 選題的背景和意義1</p><p> 1.2 課題的可行性分析1</p><p> 2 主要開發(fā)工具和技術(shù)簡介3</p><p> 2.1 基于B/S的體系結(jié)構(gòu)3<
13、;/p><p> 2.2 Dreamweaver開發(fā)工具簡介3</p><p> 2.3 ASP概述5</p><p><b> 2.4 小結(jié)6</b></p><p><b> 3 需求分析7</b></p><p> 3.1 系統(tǒng)功能概述7<
14、;/p><p> 3.2 本章小結(jié)9</p><p> 4 系統(tǒng)結(jié)構(gòu)設(shè)計10</p><p> 4.1 系統(tǒng)的結(jié)構(gòu)設(shè)計10</p><p> 4.2 數(shù)據(jù)庫原理11</p><p> 4.3數(shù)據(jù)庫系統(tǒng)分析15</p><p> 4.4數(shù)據(jù)庫物理實現(xiàn)17</p>
15、;<p> 5 詳細(xì)設(shè)計20</p><p> 5.1 數(shù)據(jù)庫的連接和系統(tǒng)基本設(shè)置20</p><p> 5.2用戶登陸21</p><p> 5.3 系統(tǒng)管理說明27</p><p> 5.4教師管理說明31</p><p> 6 系統(tǒng)的運(yùn)行與測試36</p>
16、<p> 6.1 軟件測試36</p><p> 6.2 軟件測試的目的36</p><p> 6.3 測試的內(nèi)容37</p><p> 6.4 測試用例37</p><p> 6.5 測試結(jié)論39</p><p> 7 系統(tǒng)的使用說明與安裝40</p>&l
17、t;p> 7.1 安裝設(shè)置40</p><p><b> 結(jié) 論42</b></p><p><b> 致 謝43</b></p><p><b> 參考文獻(xiàn)44</b></p><p><b> 1 緒 論</b><
18、;/p><p> 1.1 選題的背景和意義</p><p> 學(xué)生選課系統(tǒng)是一個學(xué)校不可缺少的部分,它的內(nèi)容對于學(xué)校的決策者和管理者來說都至關(guān)重要,所以學(xué)生選課系統(tǒng)應(yīng)該能夠為用戶提供充足的信息和快捷的查詢手段。但一直以來人們使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多缺點(diǎn),如:效率低、保密性差,另外時間一長,將產(chǎn)生大量的文件和數(shù)據(jù),這對于查找、更新和維護(hù)都帶來了不少的困難。<
19、;/p><p> 隨著科學(xué)技術(shù)的不斷提高,計算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識,它已進(jìn)入人類社會的各個領(lǐng)域并發(fā)揮著越來越重要的作用。</p><p> 作為計算機(jī)應(yīng)用的一部分,使用計算機(jī)對選課信息進(jìn)行管理,有著手工管理所無法比擬的優(yōu)點(diǎn).例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點(diǎn)能夠極大地提高人事勞資管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理
20、,與世界接軌的重要條件。</p><p> 因此,開發(fā)這樣一套軟件成為很有必要的事情,在下面的各章中我們將以開發(fā)一套學(xué)生選課系統(tǒng)為例,談?wù)勂溟_發(fā)過程和所涉及到的問題及解決方法。</p><p> 本文中所做的主要工作如下:</p><p> (1)闡述整個個性化頁面生成系統(tǒng)的系統(tǒng)結(jié)構(gòu)及工作原理;分析了系統(tǒng)實現(xiàn)中的特殊性、難點(diǎn)和重點(diǎn)。</p>&l
21、t;p> (2)設(shè)計實現(xiàn)用戶管理、課程管理、選課信息錄入管理、新生信息錄入管理、課程的瀏覽和查找、學(xué)生查找等ASP.NET頁面。</p><p> (3)分析并解決實現(xiàn)中的若干技術(shù)問題。 </p><p> (4)建立完整的網(wǎng)上選課,進(jìn)行測試并分析結(jié)果。</p><p> 1.2 課題的可行性分析</p><p> (1)技術(shù)
22、可行性-----本系統(tǒng)僅需要一臺裝有Office軟件的計算機(jī)即可,對機(jī)器本身沒有太高的要求,一般當(dāng)前學(xué)?;騻€人電腦完全可滿足要求。對于軟件技術(shù)要求,現(xiàn)在的程序設(shè)計語言已非常成熟,要運(yùn)用HTML樣式,圖形圖象制作工具來制作生動活潑的網(wǎng)頁及美觀的圖形文件或動畫文件,數(shù)據(jù)庫使用SQL Server 2000中提供的數(shù)據(jù)庫桌面工具ODBC。</p><p> (2)經(jīng)濟(jì)可行性-----由于本系統(tǒng)是為學(xué)生選課管理使用的系
23、統(tǒng),裝上該應(yīng)用軟件,即可使用系統(tǒng),系統(tǒng)成本主要集中在系統(tǒng)軟件的開發(fā)上,當(dāng)系統(tǒng)投入運(yùn)行后可以為學(xué)校節(jié)約大量的人力,物力。所帶來的效益遠(yuǎn)遠(yuǎn)大于系統(tǒng)軟件的開發(fā)成本。在經(jīng)濟(jì)上完全可行。</p><p> (3)操作可行性-----界面設(shè)計時充分考慮管理人員的習(xí)慣,使得操作簡單;數(shù)據(jù)錄入迅速、規(guī)范、可靠;統(tǒng)計準(zhǔn)確;制表靈活;適應(yīng)力強(qiáng);容易擴(kuò)充。</p><p> 2 主要開發(fā)工具和技術(shù)簡介&l
24、t;/p><p> 2.1 基于B/S的體系結(jié)構(gòu)</p><p> 在傳統(tǒng)的兩層C/S(Client/Server)模型中,客戶端承擔(dān)了過多的角色,而顯得臃腫,這種模型雖然部署比較容易,安全性較高,但是很難進(jìn)行升級和改進(jìn),也不適合分布式環(huán)境中的應(yīng)用。為了滿足檔案管理系統(tǒng)中管理員地域分散,以及不斷升級和改進(jìn)系統(tǒng)以滿足用戶多樣性需求,本系統(tǒng)采用了B/S(Browse/Server)開發(fā)模式進(jìn)
25、行開發(fā),采用ASP作為開發(fā)語言,用SQL Server 2000數(shù)據(jù)庫進(jìn)行數(shù)據(jù)的設(shè)計和存儲。</p><p> 在B/S體系結(jié)構(gòu)系統(tǒng)中,用戶通過瀏覽器向分布在網(wǎng)絡(luò)上的許多服務(wù)器發(fā)出請求,服務(wù)器對瀏覽器的請求進(jìn)行處理,將用戶所需信息返回到瀏覽器。B/S結(jié)構(gòu)又被稱為瘦客戶端結(jié)構(gòu),客戶端的主要任務(wù)是進(jìn)行頁面的顯示,服務(wù)器將擔(dān)負(fù)更多的工作,對數(shù)據(jù)庫的訪問和應(yīng)用程序的執(zhí)行將在服務(wù)器上完成。瀏覽器發(fā)出請求,而其余如數(shù)據(jù)請求
26、、加工、結(jié)果返回以及動態(tài)網(wǎng)頁生成等工作全部由Web Server完成。實際上B/S體系結(jié)構(gòu)是把二層C/S結(jié)構(gòu)的事務(wù)處理邏輯模塊從客戶機(jī)的任務(wù)中分離出來,由Web服務(wù)器單獨(dú)組成一層來負(fù)擔(dān)其任務(wù),這樣客戶機(jī)的壓力減輕了,把負(fù)荷分配給了Web服務(wù)器[11]。這種三層體系結(jié)構(gòu)如圖2.1所示:</p><p> 圖2.1 B/S三層架構(gòu)示意圖</p><p> 由于客戶端和服務(wù)器的分離,可以讓
27、開發(fā)者把主要的精力放到業(yè)務(wù)邏輯的處理中去。另外,這種三層結(jié)構(gòu)在層與層之間相互獨(dú)立,任何一層的改變不會影響其它層的功能[9]。</p><p> 2.2 Dreamweaver開發(fā)工具簡介</p><p> Dreamweaver是美國MACROMEDIA公司開發(fā)的集網(wǎng)頁制作和管理網(wǎng)站于一身的所見即所得網(wǎng)頁編輯器,它是第一套針對專業(yè)網(wǎng)頁設(shè)計師特別發(fā)展的視覺化網(wǎng)頁開發(fā)工具,利用它可以輕而
28、易舉地制作出跨越平臺限制和跨越瀏覽器限制的充滿動感的網(wǎng)頁。</p><p> DREAMWEAVER、FLASH以及在DREAMWEAVER之后推出的針對專業(yè)網(wǎng)頁圖像設(shè)計的FIREWORKS,三者被MACROMEDIA公司稱為DREAMTEAM(夢之隊),足見市場的反響和MACROMEDIA公司對它們的自信。說到DREAMWEAVER我們應(yīng)該了解一下網(wǎng)頁編輯器的發(fā)展過程,隨著互聯(lián)網(wǎng)(Internet) 的家喻戶
29、曉,HTML技術(shù)的不斷發(fā)展和完善,隨之而產(chǎn)生了眾多網(wǎng)頁編輯器,從網(wǎng)頁編輯器基本性質(zhì)可以分為所見即所得網(wǎng)頁編輯器和非所見即所得網(wǎng)頁編輯器(則原始代碼編輯器),兩者各有千秋。所見則所得網(wǎng)頁編輯器的優(yōu)點(diǎn)就是直觀性,使用方便,容易上手,您在所見即所得網(wǎng)頁編輯器進(jìn)行網(wǎng)頁制作和在WORD中進(jìn)行文本編輯不會感到有什么區(qū)別。</p><p> 1.Dreamweaver的優(yōu)點(diǎn)</p><p> (1)
30、最佳的制作效率</p><p> Dreamweaver可以用最快速的方式將Fireworks,F(xiàn)reeHand或Photoshop等檔案移至網(wǎng)頁上。使用檢色吸管工具選擇熒幕上的顏色可設(shè)定最接近的網(wǎng)頁安全色。對于選單,快捷鍵與格式控制,都只要一個簡單步驟便可完成。Dremweaver能與您喜愛的設(shè)計工具,如Playback Flash,Shockwave和外掛模組等搭配,不需離開Dremweaver便可完成,整
31、體運(yùn)用流程自然順暢。除此之外,只要單擊便可使Dreamweaver自動開啟Firework或Photoshop來進(jìn)行編輯與設(shè)定圖檔的最佳化。 </p><p><b> (2)網(wǎng)站管理 </b></p><p> 使用網(wǎng)站地圖可以快速制作網(wǎng)站雛形、設(shè)計、更新和重組網(wǎng)頁。改變網(wǎng)頁位置或檔案名稱,Dreamweaver 會自動更新所有連結(jié)。使用鏈接文字、HTML碼、H
32、TML屬性標(biāo)簽和一般語法的搜尋及置換功能使得復(fù)雜的網(wǎng)站更新變得迅速又簡單。 </p><p> (3)無可比擬的控制能力 </p><p> Dreamweaver是唯一提供Roundtrip HTML、視覺化編輯與原始碼編輯同步的設(shè)計工具。它包含HomeSite和BBEdit等主流文字編輯器。幀(frames)和表格的制作速度快的令您無法想像。進(jìn)階表格編輯功能使您簡單的選擇單格、行、
33、欄或作未連續(xù)之選取。甚至可以排序或格式化表格群組,Dreamweaver 支持精準(zhǔn)定位,利用可輕易轉(zhuǎn)換成表格的圖層以拖拉置放的方式進(jìn)行版面配置。所見即所得 Dreamweaver成功整合動態(tài)式出版視覺編輯及電子商務(wù)功能,提供超強(qiáng)的支援能力給Third-party廠商,包含ASP,Apache,BroadVision,Cold Fusion,iCAT,Tango與自行發(fā)展的應(yīng)用軟體。當(dāng)您正使用Dreamweaver在設(shè)計動態(tài)網(wǎng)頁時,所見即
34、所得的功能,讓您不需要透過瀏覽器就能預(yù)覽網(wǎng)頁。夢幻樣版和XML Dreamweaver將內(nèi)容與設(shè)計分開,應(yīng)用于快速網(wǎng)頁更新和團(tuán)隊合作網(wǎng)頁編輯。建立網(wǎng)頁外觀的樣版,指定可編輯或不可編輯的部份,內(nèi)容提供者可直接編輯以樣式為主的內(nèi)容卻不會不小心改變既定之樣式。您也可以使用樣版正確地輸入或輸出XML內(nèi)容。 全方位的呈現(xiàn)利</p><p> 2.Dreamweaver的不足</p><p> (
35、1)難以精確達(dá)到與瀏覽器完全一致的顯示效果。也就是說您在所見即所得網(wǎng)頁編輯器中制作的網(wǎng)頁放到瀏覽器中是很難完全達(dá)到您真正想要的效果,這一點(diǎn)在結(jié)構(gòu)復(fù)雜一些的網(wǎng)頁(如分幀結(jié)構(gòu)、動態(tài)網(wǎng)頁結(jié)構(gòu))中便可以體現(xiàn)出來; </p><p> (2)頁面原始代碼的難以控制性,比如您在所見即所得編輯器中制作一張表格也要幾分鐘,但您要它完全符合您要求可能需要幾十分鐘,甚至更多時間。而相比之下,非所見則所得的網(wǎng)頁編輯器,就不存在這個問
36、題。</p><p> 2.3 ASP概述</p><p> ASP是Active Server Page的縮寫,意為“動態(tài)服務(wù)器頁面”。ASP是微軟公司開發(fā)的代替CGI腳本程序的一種應(yīng)用,它可以與數(shù)據(jù)庫和其它程序進(jìn)行交互,是一種簡單、方便的編程工具。ASP的網(wǎng)頁文件的格式是.asp,現(xiàn)在常用于各種動態(tài)網(wǎng)站中。 ASP是一種服務(wù)器端腳本編寫環(huán)境,可以用來創(chuàng)建和運(yùn)行動態(tài)網(wǎng)頁或Web應(yīng)用
37、程序。ASP網(wǎng)頁可以包含HTML標(biāo)記、普通文本、腳本命令以及COM組件等。利用ASP可以向網(wǎng)頁中添加交互式內(nèi)容(如在線表單),也可以創(chuàng)建使用HTML網(wǎng)頁作為用戶界面的web應(yīng)用程序。 與HTML相比,ASP網(wǎng)頁具有以下特點(diǎn):</p><p> (1)利用ASP可以實現(xiàn)突破靜態(tài)網(wǎng)頁的一些功能限制,實現(xiàn)動態(tài)網(wǎng)頁技術(shù);</p><p> (2)ASP文件是包含在HTML代碼所組成的文件中的,
38、易于修改和測試;</p><p> (3)服務(wù)器上的ASP解釋程序會在服務(wù)器端執(zhí)行ASP程序,并將結(jié)果以HTML格式傳送到客戶端瀏覽器上,因此使用各種瀏覽器都可以正常瀏覽ASP所產(chǎn)生的網(wǎng)頁;</p><p> (4)ASP提供了一些內(nèi)置對象,使用這些對象可以使服務(wù)器端腳本功能更強(qiáng)。例如可以從web瀏覽器中獲取用戶通過HTML表單提交的信息,并在腳本中對這些信息進(jìn)行處理,然后向web瀏覽
39、器發(fā)送信息;</p><p> (5)ASP可以使用服務(wù)器端ActiveX組件來執(zhí)行各種各樣的任務(wù),例如存取數(shù)據(jù)庫、發(fā)現(xiàn)或訪問文件系統(tǒng)等;</p><p> (6)由于服務(wù)器是將ASP程序執(zhí)行的結(jié)果以HTML格式傳回客戶端瀏覽器,因此使用者不會看到ASP所編寫的原始程序代碼,可防止ASP程序代碼被竊取。</p><p><b> 2.4 小結(jié)<
40、;/b></p><p> 本章主要介紹了本課題系統(tǒng)開發(fā)中所需用到的關(guān)鍵技術(shù)。利用上述工具與技術(shù)可以開發(fā)出一款網(wǎng)上選課系統(tǒng)。這幾種技術(shù)的綜合使用也能使系統(tǒng)在性能方面有較大的優(yōu)越性。</p><p><b> 3 需求分析</b></p><p> 3.1 系統(tǒng)功能概述</p><p> 本系統(tǒng)是一個因特
41、網(wǎng)上開放式的網(wǎng)上選課系統(tǒng),只要具有相應(yīng)權(quán)限,管理員可以隨時隨地的進(jìn)行選課操作,方便高效快捷。管理員可以進(jìn)行錄入個人信息,修改信息,刪除信息,查詢信息等基本信息操作,具有強(qiáng)大的統(tǒng)計功能,支持準(zhǔn)確的數(shù)據(jù)查詢功能。超級管理員具有對賬號的修改,添加,刪除操作權(quán)限。</p><p> 在本系統(tǒng)中,有三類用戶:系統(tǒng)管理員、教師和學(xué)生。三種不同的用戶所具有的操作權(quán)限以及操作內(nèi)容均不一樣。</p><p&g
42、t; 本選課系統(tǒng)給予教師很大的自主權(quán),系統(tǒng)管理員只負(fù)責(zé)向系統(tǒng)中添加學(xué)生和教師的個人信息以及教學(xué)樓教室信息。系統(tǒng)管理員不參與開設(shè)課程、選擇課程等,一切均由教師、學(xué)生等錄網(wǎng)站自行完成。系統(tǒng)管理員設(shè)置一個選課時間段,在到達(dá)時間段以前,教師可以開設(shè)課程;到達(dá)時間段以后,學(xué)生可以登陸網(wǎng)站選擇課程。</p><p> 教師用戶登陸網(wǎng)站后可以開設(shè)課程,為自己的課程編輯上課時間和地點(diǎn),當(dāng)系統(tǒng)中出現(xiàn)時間地點(diǎn)沖突的時候,系統(tǒng)向教
43、師用戶報告并推薦一個時間地點(diǎn)。每門課程可以是必修或則選修,教師為每門課程設(shè)置一個學(xué)分,并可以在課程結(jié)束后給予分?jǐn)?shù),如果學(xué)生及格,學(xué)生將獲得該課程的學(xué)分。</p><p> 對于學(xué)生用戶,每個學(xué)生除了必須選擇必修課程外,至少還要選擇兩門選修課程,學(xué)生可以對自己選課信息鎖定,以免不小心被修改。當(dāng)時候超過選課時段后,系統(tǒng)自動鎖定學(xué)生的選課課程。系統(tǒng)可以根據(jù)學(xué)生的選課信息,生成一份學(xué)生自己的課表。課程結(jié)束后學(xué)生可登錄網(wǎng)
44、站查詢成績與學(xué)分。</p><p> 根據(jù)上面的要求,從操作功能上可以分為兩個類:一個是通用操作,主要實現(xiàn)用戶的登錄注銷和修改密碼等;另一種是為不同用戶定制不同操作。</p><p><b> 1.通用操作</b></p><p><b> (1)登錄與注銷</b></p><p> 每個用
45、戶都可以用自己的帳號登錄系統(tǒng)。用戶操作完成后推出系統(tǒng),注銷后可以重新登錄系統(tǒng)。</p><p><b> (2)修改密碼</b></p><p> 每個用戶第一次登錄都用默認(rèn)密碼(教師和學(xué)生與帳號一樣)。</p><p><b> 2.用戶所具有功能</b></p><p><b>
46、 (1)系統(tǒng)管理員</b></p><p> 設(shè)置選課時間段:系統(tǒng)管理員通過此項功能設(shè)置選課時段,只有在選課時間段里,學(xué)生才可以選擇課程,超過次時間段,學(xué)生選課信息被自動所定,不得修改。</p><p> 錄入學(xué)生與教師個人信息:通過此項功能可以實現(xiàn)對教師和學(xué)生的個人信息添加刪除。</p><p> 錄入教學(xué)樓教室信息:通過此項功能可以把學(xué)校里所
47、有的教學(xué)樓教室的信息錄入到系統(tǒng)中,以便教師在開設(shè)課程時候設(shè)置上課的教室。</p><p><b> (2)教師用戶</b></p><p> 顯示和修改個人信息:教師用戶登錄系統(tǒng)后,可以查看和修改教師的個人信息,如姓名,電話,E-mail地址等。</p><p> 開設(shè)課程:教師用戶登錄系統(tǒng)后,可以開設(shè)課程,可以設(shè)置該課程為必修課程或則選
48、修課程,可以設(shè)置該課程的最大人數(shù)。教師還可以為該課程設(shè)置一個前導(dǎo)課程,若學(xué)生沒有學(xué)習(xí)或則選擇前導(dǎo)課程則不能選擇該課程。</p><p> 編輯課程上課時間:教師在開設(shè)了課程后,可以靈活地設(shè)置上課時間和地點(diǎn)。</p><p> 給學(xué)生分?jǐn)?shù):課程結(jié)束后,教師用戶登錄系統(tǒng),可以為學(xué)過課程的學(xué)生給予相應(yīng)的成績,若及格,給予學(xué)生學(xué)分。</p><p><b>
49、 (3)學(xué)生用戶</b></p><p> 顯示和修改個人信息:學(xué)生登錄系統(tǒng)后,可以查看和修改學(xué)生的個人信息,如姓名,性別,電話等。</p><p> 查看必修課程:學(xué)生登錄后,可以查看所有的必修課程。查看該課程的信息,上課時間地點(diǎn),開課教師信息等。</p><p> 選擇選修課程:學(xué)生登錄系統(tǒng)后,在所有選修課程中可以選擇至少兩門選修課程。同時可以
50、查看相關(guān)信息。</p><p> 鎖定選課信息:學(xué)生登錄系統(tǒng),確定了所選課程后,可以鎖定自己的選課信息,以防被別人或則自己不小心修改。</p><p> 查看最終選課信息:學(xué)生登錄系統(tǒng)后,可列出已選擇的課程,若選課信息未被鎖定,則可以退選,若所選課程少于兩門,系統(tǒng)會提示選擇的課程少于兩門。</p><p> 課程結(jié)束后,學(xué)生登錄系統(tǒng)可查看自己學(xué)習(xí)課程的成績和已
51、獲的學(xué)分。</p><p><b> 3.2 本章小結(jié)</b></p><p> 本章是對系統(tǒng)功能的概要論述。在本章里,對系統(tǒng)管理員、教師和學(xué)生的操作做出了詳細(xì)的介紹。</p><p><b> 4 系統(tǒng)結(jié)構(gòu)設(shè)計</b></p><p> 4.1 系統(tǒng)的結(jié)構(gòu)設(shè)計</p>
52、<p> 在前面的系統(tǒng)的系統(tǒng)功能分析中,將系統(tǒng)劃分成10個模塊,如圖:</p><p> 圖4.1 系統(tǒng)結(jié)構(gòu)圖</p><p> 用戶登錄身份驗證模塊是驗證用戶名和密碼,并根據(jù)不同的用戶類型,跳轉(zhuǎn)到相對應(yīng)的頁面中。設(shè)置選課時間模塊提供給系統(tǒng)管理員修改選課時間段。開設(shè)課程模塊提供給教師用戶,用來開設(shè)一門必修課程或者選修課程。編輯課程時間地點(diǎn)模塊提供給教師用戶,編輯課程的上課時
53、間地點(diǎn)友好的界面和操作。評分模塊用于教師用戶給選修該教師開設(shè)的課程的學(xué)生評分。查看課程模塊包括查看必修課程、查看選修課程、查看已選課程、查看課程成績單。選課和鎖定模塊中實現(xiàn)選擇選修課程和鎖定選課信息的功能。</p><p><b> 4.2 數(shù)據(jù)庫原理</b></p><p><b> 1.?dāng)?shù)據(jù)庫概要</b></p><p
54、> 數(shù)據(jù):實際上就是描述事物的符號記錄。 </p><p> 數(shù)據(jù)的特點(diǎn):有一定的結(jié)構(gòu),有型與值之分,如整型、實型、字符型等。而數(shù)據(jù)的值給出了符合定型的值,如整型值15。 </p><p> 數(shù)據(jù)庫:是數(shù)據(jù)的集合,具有統(tǒng)一的結(jié)構(gòu)形式并存放于統(tǒng)一的存儲介質(zhì)內(nèi),是多種應(yīng)用數(shù)據(jù)的集成,并可被各個應(yīng)用程序共享。 </p><p> 數(shù)據(jù)庫存放數(shù)據(jù)是按數(shù)據(jù)所提供
55、的數(shù)據(jù)模式存放的,具有集成與共享的特點(diǎn)。 </p><p> 數(shù)據(jù)庫管理系統(tǒng):一種系統(tǒng)軟件,負(fù)責(zé)數(shù)據(jù)庫中的數(shù)據(jù)組織、數(shù)據(jù)操縱、數(shù)據(jù)維護(hù)、控制及保護(hù)和數(shù)據(jù)服務(wù)等,是數(shù)據(jù)庫的核心。 </p><p> 數(shù)據(jù)庫管理系統(tǒng)功能: </p><p> (1)數(shù)據(jù)模式定義:即為數(shù)據(jù)庫構(gòu)建其數(shù)據(jù)框架; </p><p> (2)數(shù)據(jù)存取的物理構(gòu)建:為
56、數(shù)據(jù)模式的物理存取與構(gòu)建提供有效的存取方法與手段; </p><p> (3)數(shù)據(jù)操縱:為用戶使用數(shù)據(jù)庫的數(shù)據(jù)提供方便,如查詢、插入、修改、刪除等以及簡單的算術(shù)運(yùn)算及統(tǒng)計; </p><p> (4)數(shù)據(jù)的完整性、安生性定義與檢查; </p><p> (5)數(shù)據(jù)庫的并發(fā)控制與故障恢復(fù); </p><p> (6)數(shù)據(jù)的服務(wù):如拷貝、
57、轉(zhuǎn)存、重組、性能監(jiān)測、分析等。 </p><p> 為完成以上六個功能,數(shù)據(jù)庫管理系統(tǒng)提供以下的數(shù)據(jù)語言: </p><p> (1)數(shù)據(jù)定義語言:負(fù)責(zé)數(shù)據(jù)的模式定義與數(shù)據(jù)的物理存取構(gòu)建; </p><p> (2)數(shù)據(jù)操縱語言:負(fù)責(zé)數(shù)據(jù)的操縱,如查詢與增、刪、改等; </p><p> (3)數(shù)據(jù)控制語言:負(fù)責(zé)數(shù)據(jù)完整性、安全性的定
58、義與檢查以及并發(fā)控制、故障恢復(fù)等。 </p><p> 數(shù)據(jù)語言按其使用方式具有兩種結(jié)構(gòu)形式:交互式命令(又稱自含型或自主型語言)宿主型語言(一般可嵌入某些宿主語言中)。 </p><p> 數(shù)據(jù)庫管理員:對數(shù)據(jù)庫進(jìn)行規(guī)劃、設(shè)計、維護(hù)、監(jiān)視等的專業(yè)管理人員。 </p><p> 數(shù)據(jù)庫系統(tǒng):由數(shù)據(jù)庫(數(shù)據(jù))、數(shù)據(jù)庫管理系統(tǒng)(軟件)、數(shù)據(jù)庫管理員(人員)、硬件平
59、臺(硬件)、軟件平臺(軟件)五個部分構(gòu)成的運(yùn)行實體。 </p><p> 數(shù)據(jù)庫應(yīng)用系統(tǒng):由數(shù)據(jù)庫系統(tǒng)、應(yīng)用軟件及應(yīng)用界面三者組成。 </p><p> 文件系統(tǒng)階段:提供了簡單的數(shù)據(jù)共享與數(shù)據(jù)管理能力,但是它無法提供完整的、統(tǒng)一的、管理和數(shù)據(jù)共享的能力。 </p><p> 層次數(shù)據(jù)庫與網(wǎng)狀數(shù)據(jù)庫系統(tǒng)階段 :為統(tǒng)一與共享數(shù)據(jù)提供了有力支撐。 </p&g
60、t;<p> 關(guān)系數(shù)據(jù)庫系統(tǒng)階段 </p><p> 數(shù)據(jù)庫系統(tǒng)的基本特點(diǎn):數(shù)據(jù)的集成性 、數(shù)據(jù)的高共享性與低冗余性 、數(shù)據(jù)獨(dú)立性(物理獨(dú)立性與邏輯獨(dú)立性)、數(shù)據(jù)統(tǒng)一管理與控制。數(shù)據(jù)庫是網(wǎng)站的核心,數(shù)據(jù)庫設(shè)計的合理與否對網(wǎng)站的建設(shè)有著至關(guān)重要的影響。 </p><p> 數(shù)據(jù)庫系統(tǒng)的三級模式: </p><p> (1)概念模式:數(shù)據(jù)庫系統(tǒng)中全
61、局?jǐn)?shù)據(jù)邏輯結(jié)構(gòu)的描述,全體用戶公共數(shù)據(jù)視圖; </p><p> (2)外模式:也稱子模式與用戶模式。是用戶的數(shù)據(jù)視圖,也就是用戶所見到的數(shù)據(jù)模式; </p><p> (3)內(nèi)模式:又稱物理模式,它給出了數(shù)據(jù)庫物理存儲結(jié)構(gòu)與物理存取方法。 </p><p> 數(shù)據(jù)庫系統(tǒng)的兩級映射: </p><p> (1)概念模式到內(nèi)模式的映射;
62、 </p><p> (2)外模式到概念模式的映射。 </p><p><b> 2.?dāng)?shù)據(jù)模型 </b></p><p> 數(shù)據(jù)模型的概念:是數(shù)據(jù)特征的抽象,從抽象層次上描述了系統(tǒng)的靜態(tài)特征、動態(tài)行為和約束條件,為數(shù)據(jù)庫系統(tǒng)的信息表與操作提供一個抽象的框架。描述了數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作及數(shù)據(jù)約束。 </p><p>
63、 E-R模型的基本概念 </p><p> (1)實體:現(xiàn)實世界中的事物; </p><p> (2)屬性:事物的特性; </p><p> (3)聯(lián)系:現(xiàn)實世界中事物間的關(guān)系。實體集的關(guān)系有一對一、一對多、多對多的聯(lián)系。 </p><p> E-R模型三個基本概念之間的聯(lián)接關(guān)系:實體是概念世界中的基本單位,屬性有屬性域,每個實體可取
64、屬性域內(nèi)的值。一個實體的所有屬性值叫元組。 </p><p> E-R模型的圖示法:實體集表示法、屬性表法和聯(lián)系表示法。 </p><p> 層次模型的基本結(jié)構(gòu)是樹形結(jié)構(gòu),具有以下特點(diǎn): </p><p> (1)每棵樹有且僅有一個無雙親結(jié)點(diǎn),稱為根; </p><p> (2)樹中除根外所有結(jié)點(diǎn)有且僅有一個雙親。 </p>
65、;<p> 從圖論上看,網(wǎng)狀模型是一個不加任何條件限制的無向圖。 </p><p> 關(guān)系模型采用二維表來表示,簡稱表,由表框架及表的元組組成。一個二維表就是一個關(guān)系。 </p><p> 在二維表中凡能唯一標(biāo)識元組的最小屬性稱為鍵或碼。從所有侯選健中選取一個作為用戶使用的鍵稱主鍵。表A中的某屬性是某表B的鍵,則稱該屬性集為A的外鍵或外碼。 </p>&l
66、t;p> 關(guān)系中的數(shù)據(jù)約束: </p><p> (1)實體完整性約束:約束關(guān)系的主鍵中屬性值不能為空值; </p><p> (2)參照完全性約束:是關(guān)系之間的基本約束; </p><p> (3)用戶定義的完整性約束:它反映了具體應(yīng)用中數(shù)據(jù)的語義要求。 </p><p><b> 3.關(guān)系代數(shù) </b>
67、;</p><p> 關(guān)系數(shù)據(jù)庫系統(tǒng)的特點(diǎn)之一是它建立在數(shù)據(jù)理論的基礎(chǔ)之上,有很多數(shù)據(jù)理論可以表示關(guān)系模型的數(shù)據(jù)操作,其中最為著名的是關(guān)系代數(shù)與關(guān)系演算。 </p><p> 關(guān)系模型的基本運(yùn)算:插入、刪除、修改、查詢(包括投影、選擇、笛卡爾積運(yùn)算) </p><p> 4.?dāng)?shù)據(jù)庫設(shè)計與管理 </p><p> 數(shù)據(jù)庫設(shè)計是數(shù)據(jù)應(yīng)用的
68、核心。 </p><p> 數(shù)據(jù)庫設(shè)計的兩種方法: </p><p> (1)面向數(shù)據(jù):以信息需求為主,兼顧處理需求; </p><p> (2)面向過程:以處理需求為主,兼顧信息需求。 </p><p> 數(shù)據(jù)庫的生命周期:需求分析階段、概念設(shè)計階段、邏輯設(shè)計階段、物理設(shè)計階段、編碼階段、測試階段、運(yùn)行階段、進(jìn)一步修改階段。 <
69、;/p><p> 需求分析常用結(jié)構(gòu)析方法和面向?qū)ο蟮姆椒?。結(jié)構(gòu)化分析(簡稱SA)方法用自頂向下、逐層分解的方式分析系統(tǒng)。用數(shù)據(jù)流圖表達(dá)數(shù)據(jù)和處理過程的關(guān)系。對數(shù)據(jù)庫設(shè)計來講,數(shù)據(jù)字典是進(jìn)行詳細(xì)的數(shù)據(jù)收集和數(shù)據(jù)分析所獲得的主要結(jié)果。 </p><p> 數(shù)據(jù)字典是各類數(shù)據(jù)描述的集合,包括5個部分:數(shù)據(jù)項、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流(可以是數(shù)據(jù)項,也可以是數(shù)據(jù)結(jié)構(gòu))、數(shù)據(jù)存儲、處理過程。 </p&
70、gt;<p> 數(shù)據(jù)庫概念設(shè)計的目的是分析數(shù)據(jù)內(nèi)在語義關(guān)系。設(shè)計的方法有兩種 </p><p> (1)集中式模式設(shè)計法(適用于小型或并不復(fù)雜的單位或部門); </p><p> (2)視圖集成設(shè)計法。 </p><p> 設(shè)計方法:E-R模型與視圖集成。 </p><p> 視圖設(shè)計一般有三種設(shè)計次序:自頂向下、由底
71、向上、由內(nèi)向外。 </p><p> 視圖集成的幾種沖突:命名沖突、概念沖突、域沖突、約束沖突。 </p><p> 關(guān)系視圖設(shè)計:關(guān)系視圖的設(shè)計又稱外模式設(shè)計。 </p><p> 關(guān)系視圖的主要作用: </p><p> (1)提供數(shù)據(jù)邏輯獨(dú)立性; </p><p> (2)能適應(yīng)用戶對數(shù)據(jù)的不同需求;
72、</p><p> (3)有一定數(shù)據(jù)保密功能。 </p><p> 數(shù)據(jù)庫的物理設(shè)計主要目標(biāo)是對數(shù)據(jù)內(nèi)部物理結(jié)構(gòu)作調(diào)整并選擇合理的存取路徑,以提高數(shù)據(jù)庫訪問速度有效利用存儲空間。一般RDBMS中留給用戶參與物理設(shè)計的內(nèi)容大致有索引設(shè)計、集成簇設(shè)計和分區(qū)設(shè)計。 </p><p> 數(shù)據(jù)庫管理的內(nèi)容: </p><p> (1)數(shù)據(jù)庫的建
73、立; </p><p> (2)數(shù)據(jù)庫的調(diào)整; </p><p> (3)數(shù)據(jù)庫的重組; </p><p> (4)數(shù)據(jù)庫安全性與完整性控制; </p><p> (5)數(shù)據(jù)庫的故障恢復(fù); </p><p><b> (6)數(shù)據(jù)庫監(jiān)控。</b></p><p>
74、 數(shù)據(jù)庫是此類系統(tǒng)的核心,系統(tǒng)中所有的信息都存儲在數(shù)據(jù)庫中,在所有ASP.NET頁面中通過ADO.NET與數(shù)據(jù)庫連接,操作數(shù)據(jù)庫中的數(shù)據(jù),從而實現(xiàn)所有需要的功能。數(shù)據(jù)庫軟件有很多,如Microsoft SQL Server 2000等。本系統(tǒng)中數(shù)據(jù)庫采用Microsoft SQL Server 2000作為數(shù)據(jù)庫工具。數(shù)據(jù)庫是網(wǎng)站的核心,數(shù)據(jù)庫設(shè)計的合理與否對網(wǎng)站的建設(shè)有著至關(guān)重要的影響。一個良好的數(shù)據(jù)庫開發(fā)過程一般是先系統(tǒng)分析,再邏輯
75、設(shè)計,然后物理實現(xiàn)。系統(tǒng)分析中分析數(shù)據(jù)庫用戶需求,并畫出E-R圖直觀地表示出數(shù)據(jù)庫系統(tǒng)的需求。邏輯設(shè)計中根據(jù)系統(tǒng)分析設(shè)計的一個關(guān)系模型。物理設(shè)計為邏輯設(shè)計中的數(shù)據(jù)模型選取一個最合理的應(yīng)用環(huán)境的物理結(jié)構(gòu),通常選取一個常用數(shù)據(jù)庫軟件,用數(shù)據(jù)庫軟件創(chuàng)建與邏輯設(shè)計中數(shù)據(jù)模型對應(yīng)的數(shù)據(jù)庫。</p><p> 4.3數(shù)據(jù)庫系統(tǒng)分析</p><p> 本系統(tǒng)的數(shù)據(jù)庫實體主要有“學(xué)生”、“教師”、“教
76、學(xué)樓”、“教室”、“課程”等。其中“教師”與“課程”存在“開設(shè)”聯(lián)系,并且一個教師可以開設(shè)N門課程,即“教師”與“課程”之間是一對多的關(guān)系。一個學(xué)生可以學(xué)習(xí)N門課程,一門課程可以有M個學(xué)生學(xué)習(xí),即“學(xué)生”與“課程”之間是多對多的關(guān)系。同樣“課程”與“教室”之間也是多對多的關(guān)系。整個數(shù)據(jù)庫可以用一個E-R圖表示,如圖:</p><p> 圖4.2 實體之間關(guān)系的E-R圖</p><p>
77、 E-R實體圖:管理員信息實體E-R圖;如圖4.3所示教師用戶實體E-R圖如圖4.4所示;學(xué)生用戶信息實體E-R圖如圖4.5所示;院系信息實體E-R圖如圖4.6所示。</p><p> 圖4.3 管理員信息實體E-R圖 如圖4.4 教師用戶實體E-R圖</p><p> 圖4.5 學(xué)生用戶信息實體E-R圖
78、 圖4.6 院系信息實體E-R圖</p><p> 專業(yè)信息實體E-R圖如圖4.7所示;課程信息實體E-R圖如圖4.8所示</p><p> 圖4.7 專業(yè)信息實體E-R圖 圖4.8 課程信息實體E-R圖</p><p> 數(shù)據(jù)庫邏輯設(shè)計就是將E—R圖轉(zhuǎn)換為關(guān)系模型的過程,即將所有實體和關(guān)系轉(zhuǎn)換成一系列的關(guān)系模式。轉(zhuǎn)換過程中常見
79、規(guī)則有:</p><p> (1)一個實體型轉(zhuǎn)換為一個關(guān)系模式;</p><p> (2)一個一對一的聯(lián)系可轉(zhuǎn)換成一個獨(dú)立的關(guān)系模式,也可與任意一端對應(yīng)的關(guān)系模式合并;</p><p> (3)一個一對多的聯(lián)系可以轉(zhuǎn)換成一個獨(dú)立的關(guān)系模式,也可與多的那一端對應(yīng)的關(guān)系模式合并;</p><p> (4)一個多對多的關(guān)系轉(zhuǎn)換成一個關(guān)系模式
80、。</p><p> 根據(jù)以上四條規(guī)則,下面將E—R圖轉(zhuǎn)換成關(guān)系模型。</p><p> 對于“教學(xué)樓”、“教室”和兩者之間的關(guān)系,就可以根據(jù)規(guī)則(3)轉(zhuǎn)換成兩個關(guān)系模式</p><p> 教學(xué)樓(教學(xué)樓ID,教學(xué)樓名稱)</p><p> 教室(教室ID,教學(xué)樓ID,教室名稱)</p><p> 對于“學(xué)生
81、”、“課程”和它們之間的“選修”關(guān)系就可以規(guī)則(4)轉(zhuǎn)換成三個關(guān)系模式。</p><p> 學(xué)生(學(xué)號,姓名,性別,年齡,登陸密碼,學(xué)分,地址,電話,電子郵件)</p><p> 課程(課程編碼,課程名稱,開課教師編號,學(xué)分,課程簡介,前導(dǎo)課程編號)</p><p> 選課(學(xué)號,課程編號,成績)</p><p> 依次類推,剩下的關(guān)
82、系轉(zhuǎn)換成下面三個關(guān)系模式:</p><p> 教師(教師編號,姓名,性別,年齡,電話,電子郵件,個人簡介)</p><p> 課程時間地點(diǎn)(課程編號,開始周次,結(jié)束周次,上課時間,上課教室ID)</p><p> 管理員(帳號,密碼)</p><p> 4.4數(shù)據(jù)庫物理實現(xiàn)</p><p> 經(jīng)過數(shù)據(jù)庫系統(tǒng)分
83、析和邏輯設(shè)計后,數(shù)據(jù)庫的結(jié)構(gòu)已經(jīng)非常清晰,剩下的就是用一種數(shù)據(jù)庫軟件實現(xiàn)這樣的結(jié)構(gòu)。物理設(shè)計為邏輯設(shè)計中的數(shù)據(jù)模型選取一個最合理的應(yīng)用環(huán)境的物理結(jié)構(gòu),用數(shù)據(jù)庫軟件創(chuàng)建與邏輯設(shè)計中數(shù)據(jù)模型對應(yīng)的數(shù)據(jù)庫。本系統(tǒng)中數(shù)據(jù)庫采Microsoft SQL Server 2000作為數(shù)據(jù)庫。首先我們在Microsoft SQL Server 2000的“企業(yè)管理器”創(chuàng)建一個數(shù)據(jù)庫,我們命名為“SC”,如圖4.9:</p><p&g
84、t; 圖4.9 數(shù)據(jù)庫界面</p><p> 選中SC數(shù)據(jù)庫,向數(shù)據(jù)庫中添加7個表:</p><p> Student,Teacher,Course,SC,CourseTime,Building,Room和Admin,每個表與邏輯設(shè)計中一種的關(guān)系模式相對應(yīng)。下面是每個數(shù)據(jù)表中的屬性,包括屬性列的名稱、數(shù)據(jù)類型、長度、是否可以為空和備注說明等內(nèi)容。</p><p&g
85、t; (1)Student表。Student表用來存儲學(xué)生的個人信息,使用學(xué)號作為主鍵,其詳細(xì)信息請看下表:</p><p> 表1 Student表</p><p> (2)Teacher表。Teacher表用來存儲教師的個人信息,用學(xué)校分配給教師的教師編號作為主鍵,這樣可以避免重復(fù),其詳細(xì)信息請看下表:</p><p> 表2 Teacher表</
86、p><p> (3)Course表。Course表用來存儲課程信息,Course表以課程編號為主鍵,設(shè)置課程編號自動增加1(通過建表的時候?qū)傩粤性O(shè)置“標(biāo)識”,并設(shè)置“標(biāo)識遞增量”為1)。表中開課教師Id為外鍵,所有“TId”的值必須是Teacher表中的“TId”值。設(shè)置外鍵關(guān)系可以通過在建立表的窗口中單擊右鍵,在右鍵菜單中選擇“關(guān)系”,在彈出的對話框中設(shè)置外鍵關(guān)系。其詳細(xì)信息請看下表:</p>&
87、lt;p> 表3 Course表</p><p> (4)SC表。SC表用于存儲學(xué)生的選課信息,在SC表中學(xué)號和課程編號是主鍵,同時也是外鍵。其詳細(xì)信息請看下表:</p><p><b> 表4 SC表</b></p><p> (5)CourseTime表。CourseTime表用來存放課程的上課時間和上課地點(diǎn)信息,其中課程
88、編號和教室編號為外鍵。其詳細(xì)信息請看下表:</p><p> 表5 CourseTime表</p><p> (6)Room表。Room表用來存放教室信息,在Room表中,教室編號為主鍵,自動增加1,教學(xué)編號為外鍵。其詳細(xì)信息請看下表:</p><p><b> 表6 Room表</b></p><p> (7
89、)Admin表。Admin表用來存放系統(tǒng)管理員信息,其詳細(xì)信息請看下表:</p><p> 表7 Admin表</p><p><b> 5 詳細(xì)設(shè)計</b></p><p> 5.1 數(shù)據(jù)庫的連接和系統(tǒng)基本設(shè)置</p><p> 在本系統(tǒng)中通過對SQL Server 2000數(shù)據(jù)庫進(jìn)行相關(guān)操作,其中用來連
90、接數(shù)據(jù)庫和系統(tǒng)基本設(shè)置的公用代碼保存在inc/conn.asp文件中,相關(guān)代碼如下:</p><p><b> <%</b></p><p> On Error Resume Next</p><p> set conn = Server.CreateObject("ADODB.Connection")</
91、p><p> '以下修改數(shù)據(jù)庫路徑</p><p> datapath = "database/jzg.mdb"</p><p> DBpath = Server.MapPath(datapath)</p><p> '以下為數(shù)據(jù)庫連接代碼</p><p> Connstr =
92、 "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & DBPath</p><p> conn.Open Connstr</p><p> '以下為系統(tǒng)基本設(shè)置</p><p> set rs=conn.execute("select * from jzg_conf
93、ig")'讀取config表內(nèi)的數(shù)據(jù)</p><p> jzgname=rs(0) '首字段</p><p> jzgurl=rs(1) '第二字段</p><p> webemail=rs(2) '第三字段 </p><p><b> bar=rs(3)</b><
94、/p><p> adminname=rs(4)</p><p> DataSet ds1 = Db.ExecuteSelectSql(sql);</p><p> if ( ds1 != null && ds1.Tables.Count > 0 && ds1.Tables[0].Rows.Count > 0</p&
95、gt;<p> SqlNowString="Now()"</p><p> SqlChar="'"</p><p> remoteaddr=Request.ServerVariables("REMOTE_ADDR")</p><p><b> %></b&
96、gt;</p><p><b> 5.2用戶登陸</b></p><p> 圖5.1 用戶登陸界面</p><p> 在用戶名和密碼處輸入用戶名和密碼,在“用戶類型”下拉列表框中選擇“學(xué)生”,單擊“登錄”按鈕,登錄選課系統(tǒng)。</p><p><b> 主要代碼如下:</b></p>
97、;<p> private void btnLogin_Click(object sender, System.EventArgs e)</p><p><b> {</b></p><p> int type = Int32.Parse(ddlType.SelectedItem.Value);</p><p> stri
98、ng user = txtUser.Text.Trim();</p><p> string inputkey = txtKey.Text.Trim();</p><p> string key = "";</p><p> string sql = "";</p><p> DataSet d
99、s;</p><p> switch( type )</p><p><b> {</b></p><p> case 1://學(xué)生</p><p> //驗證學(xué)生身份代碼 </p><p><b> break;</b>&
100、lt;/p><p> case 2://教師</p><p> //驗證教師身份代碼</p><p><b> break;</b></p><p> case 3://系統(tǒng)管理員</p><p> //驗證管理員身份代碼</p><p><b>
101、; break;</b></p><p><b> default;</b></p><p><b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p
102、> 查看必修課程列表頁面,如圖5.2:</p><p> 圖5.2 必修課程表頁面</p><p> 登錄成功后,進(jìn)入學(xué)生主頁,點(diǎn)擊“必修課程”鏈接,得到所有必修課程的列表,在列表中可以看到所有必修課程及課程的簡單信息,如授課教師姓名、課程所占學(xué)分等。</p><p> 在列表中可以點(diǎn)課程名稱,如“計算機(jī)應(yīng)用基礎(chǔ)”鏈接,查看課程詳細(xì)信息;點(diǎn)教師姓名,如
103、“李萍”鏈接,查看教師的詳細(xì)信息;點(diǎn)擊“查看上課時間地點(diǎn)”鏈接,查看對應(yīng)課程的上課時間和地點(diǎn)。</p><p> 在頁面加載的時候從數(shù)據(jù)庫讀取所有必修課信息,代碼如下:</p><p> string sql = "select Course.*,TName from Course,Teacher where CType like '必修' and Cours
104、e.TId like Teacher.TId";//查詢處所有必修課程信息</p><p> DataSet ds = Db.ExecuteSelectSql(sql);</p><p> if ( ds != null && ds.Tables.Count > 0 )</p><p><b> {</b>
105、</p><p> dgCourse.DataSource = ds.Tables[0];</p><p> dgCourse.DataBind();//將查詢結(jié)果綁定到DataGrid中</p><p><b> }</b></p><p> 查看選修課程列表頁面,如圖5.3:</p><p
106、> 圖5.3選修課程列表頁面</p><p> 單擊“選修課程”鏈接,查看所有選修課程列表,在列表中給出了比必修課程更多的信息,比如多了對應(yīng)選修課程的前導(dǎo)課程、最大人數(shù)、當(dāng)前已選人數(shù)等,對每個選修課程均有一個“選修該課程”的按鈕,單擊此按鈕方可選擇對應(yīng)課程。</p><p> 主要代碼如下: </p><p> string sql = &quo
107、t;select x.*,TName,(select CName from Course as y where y.CId = x.CPreCId) as CPreCName from Course as x,Teacher where x.CType like '選修' and x.TId like Teacher.TId";</p><p> //查詢該學(xué)生已選修的課程</p
108、><p> DataSet ds = Db.ExecuteSelectSql(sql);</p><p> if ( ds != null && ds.Tables.Count > 0 )</p><p><b> {</b></p><p> dgCourse.DataSource = ds.
109、Tables[0];</p><p> dgCourse.DataBind();</p><p> for ( int i = 0; i < ds.Tables[0].Rows.Count; i++ )</p><p><b> {</b></p><p> sql = "select count
110、(*) from SC where CId = "+ds.Tables[0].Rows[i]["CId"].ToString();</p><p> DataSet ds1 = Db.ExecuteSelectSql(sql);</p><p> if ( ds1 != null && ds1.Tables.Count > 0 &am
111、p;& ds1.Tables[0].Rows.Count > 0 )</p><p> dgCourse.Items[i].Cells[6].Text = ds1.Tables[0].Rows[0][0].ToString();</p><p><b> }</b></p><p><b> }</b>
112、</p><p> bool locked= bool.Parse(Session["Locked"].ToString());</p><p> if ( ! locked )</p><p><b> {</b></p><p> lbLock.Text = "您尚未鎖定選課信息
113、!";</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> lbLock.Text = "選課信息已被鎖定!";</p><p>
114、 dgCourse.Columns[9].Visible = false;</p><p><b> }</b></p><p> 查看已選課程頁面,如圖5.4:</p><p> 圖5.4 已選課程頁面</p><p> 在上一步查看選修課程的列表中,選擇“計算機(jī)密碼學(xué)”、“計算機(jī)圖形學(xué)”、“線性代數(shù)”三門課
115、程后,點(diǎn)擊“已選課程”鏈接查看已經(jīng)選擇的課程列表,在列表中除了可以看到與上一步中相同的信息外,還可以查看到課程成績。剛才選擇的三門課程的成績均為0,當(dāng)課程結(jié)束后,教師登錄本系統(tǒng)給所有學(xué)生評分,學(xué)生再次瀏覽此頁面可查看到課程的成績,若成績合格,學(xué)生可獲得對應(yīng)課程的學(xué)分。</p><p><b> 鎖定課程代碼如下:</b></p><p> string sql =
116、 "select count(*) from SC where SId like '"+Session["Id"].ToString()+"'";</p><p> DataSet ds = Db.ExecuteSelectSql(sql);</p><p> int nCourse=0;</p>
117、<p> if ( ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0 )</p><p><b> {</b></p><p> nCourse = Int32.Parse(ds.Tables[0].Rows[0][0].ToS
118、tring());</p><p><b> }</b></p><p> if ( nCourse < 2 )</p><p><b> {</b></p><p> Response.Write(MyUtility.Alert("您必須選擇至少兩門選修課程!")
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計----網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn)
- 網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn)畢業(yè)設(shè)計
- 畢業(yè)設(shè)計(論文)+網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn)
- 畢業(yè)設(shè)計----網(wǎng)上選課系統(tǒng)設(shè)計
- 基于bs的網(wǎng)上選課系統(tǒng)體系結(jié)構(gòu)設(shè)計
- 網(wǎng)上選課系統(tǒng)畢業(yè)設(shè)計論文
- 網(wǎng)上選課系統(tǒng)畢業(yè)設(shè)計3
- 基于web的網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn)
- 網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn)——畢業(yè)論文
- 基于bs的學(xué)生網(wǎng)上選課系統(tǒng)
- 畢業(yè)論文——網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn)
- 學(xué)生網(wǎng)上選課系統(tǒng)畢業(yè)設(shè)計
- 基于jsp技術(shù)的網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn)
- 網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 選課畢業(yè)論文---學(xué)生網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn)
- 基于B-S結(jié)構(gòu)的公選課網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 畢業(yè)設(shè)計---基于bs模式選課系統(tǒng)的設(shè)計與實現(xiàn)
- 網(wǎng)上選課系統(tǒng)設(shè)計實現(xiàn)論文
- 高校公選課網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn).pdf
- 基于UML的網(wǎng)上選課系統(tǒng)的設(shè)計與實現(xiàn).pdf
評論
0/150
提交評論