版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 課 程 設(shè) 計(jì)</b></p><p><b> 二○一七年六月四日</b></p><p> 課程名稱數(shù)據(jù)庫系統(tǒng)原理課程設(shè)計(jì)</p><p> 題目名稱在線論壇系統(tǒng)</p><p> 專業(yè)班級</p><p> 學(xué)生姓名</p>
2、<p> 學(xué) 號</p><p> 指導(dǎo)教師</p><p> 計(jì)算機(jī)科學(xué)與技術(shù)系課程設(shè)計(jì)任務(wù)書</p><p> 課 程數(shù)據(jù)庫系統(tǒng)原理課程設(shè)計(jì)班級指導(dǎo)教師</p><p> 題 目在線論壇系統(tǒng)完成時(shí)間2017年 5月10日至2017年6月10日</p><p> 主要內(nèi)容功能要求:用戶注冊與登錄
3、。用戶瀏覽文章標(biāo)題與內(nèi)容。管理員增加、更改或刪除版面主題。管理員管理文章等。</p><p> 設(shè)計(jì)報(bào)告要求1.封面:(格式附后)2.課程設(shè)計(jì)任務(wù)書3.課程設(shè)計(jì)報(bào)告:⑴ 系統(tǒng)總體方案⑵ 設(shè)計(jì)思路和主要步驟⑶ 各功能模塊和流程圖⑷ 設(shè)計(jì)代碼⑸ 心得體會(huì)和參考資料說明:學(xué)生完成課程設(shè)計(jì)后,提交課程設(shè)計(jì)報(bào)告及軟件,要求文字通暢、字跡工整(也可用以打印),文字不少于5000 字,并裝訂成冊。</p><
4、;p><b> 摘 要</b></p><p> 當(dāng)今出現(xiàn)的網(wǎng)上論壇,與其它一切媒體相比,可以更加自由地發(fā)表、交流各種觀點(diǎn),可以非常及時(shí)地,廣泛、深入地,具體討論、辯論各種重要,但常有尖銳分歧。辦好網(wǎng)上論壇,就能非常及時(shí)地:使許多創(chuàng)新的思想、觀點(diǎn)得以交流、展示,使正確的,能更加明確、豐富,更加普及、傳播;使錯(cuò)誤的,能得到及時(shí)批判、糾正,而不致造成泛濫、毒害;使真理,越辯越明,更加
5、深入發(fā)展。因而,網(wǎng)上論壇是世界上真正最為民主、自由的樂土,是貫徹執(zhí)行“百花齊放、百家爭鳴”方針的有力工具,是培育、發(fā)展各種創(chuàng)新思想的重要苗圃。本系統(tǒng)的主要功能模塊有登錄模塊、注冊模塊、密碼找回模塊等。</p><p> 本文將使用ASP.NET和SQL2005作為論壇的開發(fā)工具。</p><p><b> 目 錄</b></p><p&g
6、t;<b> 第1章 緒論3</b></p><p> 第1.1節(jié) 課題來源4</p><p> 第1.2節(jié) 國內(nèi)外研究現(xiàn)狀和發(fā)展趨勢4</p><p> 第1.3節(jié) 開發(fā)目的4</p><p> 第2章 開發(fā)工具的介紹4</p><p> 系統(tǒng)開發(fā)和運(yùn)行環(huán)境4<
7、;/p><p> 第3章 需求分析與可行性分析5</p><p> 第3.1節(jié) 可行性分析5</p><p> ?。?)技術(shù)可行性和方法5</p><p> ?。?)經(jīng)濟(jì)可行性5</p><p> ?。?)操作可行性5</p><p> 第3.2節(jié) 需求分析5</p>
8、<p> (1)系統(tǒng)的功能需求6</p><p> ?。?)系統(tǒng)的性能需求6</p><p> ?。?)系統(tǒng)的數(shù)據(jù)流圖6</p><p> 第4章 總體設(shè)計(jì)7</p><p> 第4.1節(jié) 數(shù)據(jù)庫設(shè)計(jì)7</p><p> ?。?)SQL Server關(guān)系數(shù)據(jù)庫簡介[3]7</p>
9、;<p> ?。?)SQL Server數(shù)據(jù)庫系統(tǒng)有關(guān)開發(fā)的特點(diǎn)[4]8</p><p> 第4.2節(jié) 系統(tǒng)邏輯模型9</p><p> 第4.3節(jié) 系統(tǒng)邏輯結(jié)構(gòu)設(shè)計(jì)12</p><p> 第5章 詳細(xì)設(shè)計(jì)與具體實(shí)現(xiàn)15</p><p> 第5.1節(jié) 登陸模塊界面15</p><p>
10、; 第5.2節(jié) 注冊模塊界面及功能17</p><p> 第5.3節(jié) 密碼找回界面及功能20</p><p> 第5.4節(jié) 管理員登陸界面及功能22</p><p> 第5.5節(jié) 注冊用戶界面及功能24</p><p> 第5.6節(jié) 瀏覽網(wǎng)民界面及功能25</p><p> 第6章 運(yùn)行結(jié)果與測試
11、26</p><p><b> 結(jié)束語27</b></p><p><b> 參考文獻(xiàn)28</b></p><p><b> 第1章 緒論</b></p><p> 當(dāng)今出現(xiàn)的網(wǎng)上論壇,與其它一切媒體相比,可以更加自由地發(fā)表、交流各種觀點(diǎn),可以非常及時(shí)地,廣泛、深
12、入地,具體討論、辯論各種重要,但常有尖銳分歧。辦好網(wǎng)上論壇,就能非常及時(shí)的使許多創(chuàng)新的思想、觀點(diǎn)得以交流、展示。使正確的東西能更加明確、豐富的普及和傳播;使錯(cuò)誤的理念能得到及時(shí)批判、糾正,而不致造成泛濫、毒害;使真理,越辯越明,更加深入發(fā)展。因而,網(wǎng)上論壇是世界上真正最為民主、自由的樂土,是貫徹執(zhí)行“百花齊放、百家爭鳴”方針的有力工具,是培育、發(fā)展各種創(chuàng)新思想的重要苗圃。</p><p> 因?yàn)樽髡弑救讼矚g體育
13、運(yùn)動(dòng),尤其對NBA籃球情有獨(dú)鐘,于是開發(fā)了這個(gè)簡單的關(guān)于NBA籃球的論壇,既興趣所向,又鍛煉了自己的專業(yè)能力。</p><p> 第1.1節(jié) 課題來源</p><p> 隨著網(wǎng)絡(luò)的流行與發(fā)展,網(wǎng)絡(luò)逐漸成為人們發(fā)表言論的主要部分。以網(wǎng)絡(luò)為載體最大程度地利用網(wǎng)絡(luò)資源的共享、方便、快捷等優(yōu)點(diǎn),實(shí)現(xiàn)人們的言論自由。</p><p> 根據(jù)我們在一起論壇的基本流程,我
14、們永遠(yuǎn)在一起論壇有以下兩個(gè)模塊組成:</p><p> 后臺管理員模塊:實(shí)現(xiàn)管理員對論壇的維護(hù)。</p><p> 前臺用戶模塊:實(shí)現(xiàn)用戶對個(gè)人發(fā)表言論的增刪改查,發(fā)表言論,和對其他用戶詳情的查看。</p><p> 第1.2節(jié) 國內(nèi)外研究現(xiàn)狀和發(fā)展趨勢</p><p> 我國網(wǎng)上論壇隨著經(jīng)濟(jì)的迅猛增長,電腦的日益普及,網(wǎng)上論壇已經(jīng)
15、越來越受到廣大網(wǎng)名的青睞,網(wǎng)上論壇的功能也越來越強(qiáng),國外也是如此。</p><p> 第1.3節(jié) 開發(fā)目的</p><p> 一是為提高軟件編寫人員的實(shí)際應(yīng)用能力;二是為了和廣大球迷相互發(fā)表自己的意見和看法,以及對自己所愛球隊(duì)的見解。本需求的編寫目的在于研究網(wǎng)上論壇的開發(fā)途徑和應(yīng)用方法</p><p> 第2章 開發(fā)工具的介紹</p><
16、p> 本系統(tǒng)主要是針對大學(xué)生設(shè)計(jì)的,考慮到本系統(tǒng)的性能要求,和現(xiàn)有的條件,我們選擇了windows xp作為開發(fā)、測試和運(yùn)行的平臺。系統(tǒng)采用Microsoft Office中的sql sever2005 設(shè)計(jì)數(shù)據(jù)庫,并使用當(dāng)前優(yōu)秀的開發(fā)工具visual stdio 2008,它有著最為靈活的數(shù)據(jù)庫結(jié)構(gòu),對數(shù)據(jù)庫應(yīng)用有著良好的支持。</p><p><b> 系統(tǒng)開發(fā)和運(yùn)行環(huán)境</b>
17、;</p><p><b> 系統(tǒng)的開發(fā)環(huán)境:</b></p><p> 操作系統(tǒng):Windows xp/7平臺。</p><p> 文件系統(tǒng):FAT32</p><p><b> 系統(tǒng)最低運(yùn)行環(huán)境:</b></p><p> 操作系統(tǒng):Win32系統(tǒng) NT平臺系列
18、;</p><p> 內(nèi)存要求至少在128MB以上。</p><p><b> 推薦使用環(huán)境:</b></p><p> 操作系統(tǒng):Win xp 或 Win 7;</p><p><b> 文件系統(tǒng):NTFS</b></p><p> 內(nèi)存要有512MB以上,并且裝
19、有visual studio2008,SQL Server2005</p><p> 第3章 需求分析與可行性分析</p><p> 本章的主要內(nèi)容是對系統(tǒng)進(jìn)行可行性分析和需求分析。</p><p> 第3.1節(jié) 可行性分析</p><p> ?。?)技術(shù)可行性和方法</p><p> ASP所做的程序是當(dāng)今流
20、行且日益成熟的技術(shù),而本人作為開發(fā)者,學(xué)過ASP、C、C++、C#、JAVA等編程語言,有一定的編程經(jīng)驗(yàn)。學(xué)過SQLSERVER數(shù)據(jù)庫語句及一些基本操作。系統(tǒng)為票務(wù)管理系統(tǒng),我將盡最大努力,結(jié)合自己水平及實(shí)際需要,將自己所學(xué)到的知識應(yīng)用到本系統(tǒng)的設(shè)計(jì)之中,并將借此進(jìn)一步學(xué)習(xí)C#技術(shù)的性能提升、代碼安全、控件設(shè)計(jì)及面向?qū)ο蟪绦虻脑O(shè)計(jì)思想等。依據(jù)當(dāng)前所掌握的技術(shù)與學(xué)習(xí)進(jìn)度而言,完全有能力實(shí)現(xiàn)該系統(tǒng),技術(shù)上是可行的。</p>&
21、lt;p><b> ?。?)經(jīng)濟(jì)可行性</b></p><p> 系統(tǒng)所需的開發(fā)環(huán)境是要有一臺能夠聯(lián)網(wǎng)的計(jì)算機(jī),并安裝了Windows xp的操作系統(tǒng);所安裝的應(yīng)用軟件為VS2008和SQLSERVER2005數(shù)據(jù)庫。而本人已經(jīng)有了計(jì)算機(jī),具有Windows xp的操作系統(tǒng),并且SQLSERVER 2005已安裝,是完全免費(fèi)的;而所需的參考資料大多都是在網(wǎng)絡(luò)上找和在圖書館借書,這些消
22、費(fèi)很小。因此在經(jīng)濟(jì)上是可行的。</p><p><b> (3) 操作可行性</b></p><p> 本網(wǎng)站論壇以操作簡單,功能完善,運(yùn)行速度快,本著一切為用戶著想作為其設(shè)計(jì)目標(biāo),本系統(tǒng)主要為大學(xué)生用,具備一定的計(jì)算機(jī)基礎(chǔ)知識,在計(jì)算機(jī)操作方面不會(huì)存在問題。因而用戶操作上具有可行性。</p><p> 第3.2節(jié) 需求分析</p&
23、gt;<p> 利用計(jì)算機(jī)實(shí)現(xiàn)自動(dòng)的理勢在必行。對于大學(xué)生來說,利用計(jì)算機(jī)互相交流,促進(jìn)同學(xué)之間的關(guān)系。而且利用計(jì)算機(jī)進(jìn)行管理,不僅能夠保證各項(xiàng)信息準(zhǔn)確無誤、快速輸出,同時(shí)計(jì)算機(jī)具有手工管理所無法比擬的優(yōu)點(diǎn).例如:查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長、成本低等。這些優(yōu)點(diǎn)能夠極大地提高人事管理的效率,也是科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。</p><p> ?。?)系統(tǒng)的功能需求&
24、lt;/p><p> 本網(wǎng)上論壇系統(tǒng)需要在.net3.5的環(huán)境下配置運(yùn)行,具有SQL數(shù)據(jù)庫的簡單配置。</p><p> ?。?)系統(tǒng)的性能需求</p><p><b> 1、運(yùn)行環(huán)境</b></p><p> Server要求內(nèi)存256以上,cpu 2.0GHz以上.Clinet內(nèi)存128以上,cpu奔騰III以上。
25、</p><p><b> 2、支持軟件</b></p><p> 操作系統(tǒng)windos系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng):SQL2008數(shù)據(jù)庫系統(tǒng)。運(yùn)行平臺:visual studio 2005/2008。</p><p> ?。?)系統(tǒng)的數(shù)據(jù)流圖</p><p> 數(shù)據(jù)流圖(DFD,data flow diagram)是描述
26、數(shù)據(jù)處理過程的有力工具。數(shù)據(jù)流圖從數(shù)據(jù)傳遞和加工的角度,以圖形的方式刻畫數(shù)據(jù)流從輸入到輸出的移動(dòng)變換過程。</p><p> 數(shù)據(jù)流圖的基本圖形元素有4種: </p><p> →:箭頭,表示數(shù)據(jù)流;</p><p> 〇:圓或橢圓,表示加工;</p><p> ═:雙杠,表示數(shù)據(jù)存儲(chǔ);</p><p>
27、 □:方框,表示數(shù)據(jù)的源點(diǎn)或終點(diǎn)。</p><p> 本系統(tǒng)的數(shù)據(jù)流圖如圖3·1所示:</p><p><b> 瀏覽</b></p><p><b> 登陸登陸</b></p><p><b> 登陸結(jié)果登陸結(jié)果</b></p><
28、p><b> 系統(tǒng)維護(hù)用戶操作</b></p><p><b> 維護(hù)結(jié)果操作結(jié)果</b></p><p> 圖3·1網(wǎng)上論壇系統(tǒng)數(shù)據(jù)流圖</p><p><b> 第4章 總體設(shè)計(jì)</b></p><p> 上章對系統(tǒng)進(jìn)行了需求分析和可行性分析,
29、證明此系統(tǒng)完全可行,這章就對系統(tǒng)的總體設(shè)計(jì)通過圖文并茂的形式進(jìn)行介紹。</p><p> 第4.1節(jié) 數(shù)據(jù)庫設(shè)計(jì)</p><p> ?。?)SQL Server關(guān)系數(shù)據(jù)庫簡介[3]</p><p> 1、SQL Server是由Microsoft開發(fā)和推廣的關(guān)系數(shù)據(jù)庫系統(tǒng)(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同
30、開發(fā)的,并于1988年推出了第一個(gè)OS/2版本。2、關(guān)系數(shù)據(jù)庫(RDBMS)管理系統(tǒng)功能:</p><p> ?、倬S護(hù)數(shù)據(jù)庫數(shù)據(jù)之間的關(guān)系;</p><p> ?、诒WC數(shù)據(jù)存儲(chǔ)的正確性;</p><p> ③當(dāng)出現(xiàn)系統(tǒng)故障的時(shí)候,將所有數(shù)據(jù)恢復(fù)到能夠保證一致行的某種狀態(tài)</p><p> 3、RDBMS:SQL Server,Oracl
31、e,DB/2,Sybase,Informix</p><p> 4、Non-RDBMS(File-based):Foxpro,Access</p><p> (2)SQL Server特點(diǎn):</p><p><b> ?、倥c因特網(wǎng)的集成:</b></p><p> SQL Server的數(shù)據(jù)庫引擎全面支持XML(E
32、xtensive Markup Language,擴(kuò)展標(biāo)記語言),能使用戶很容易地將數(shù)據(jù)庫中的數(shù)據(jù)發(fā)布到Web頁面上。 ②可伸縮性與可用性:</p><p> 可跨越從運(yùn)行Windows 95/98的膝上型電腦到運(yùn)行Windows 2000的大型多處理器等多種平臺使用。另外,對聯(lián)合服務(wù)器,索引視圖等的支持,使得SQL Server企業(yè)版可以升級到最大Web站點(diǎn)所需的性能級別。 ③企業(yè)級數(shù)據(jù)庫功能:</
33、p><p> SQL Server分布式查詢可以引用來自不同數(shù)據(jù)庫的數(shù)據(jù),而且這些對于用戶來說是完全透明的;分布式數(shù)據(jù)庫將保證任何分布式數(shù)據(jù)更新時(shí)的完整性;復(fù)制可以使我們能夠維護(hù)多個(gè)數(shù)據(jù)復(fù)本,這些用戶能夠自主地進(jìn)行工作,然后再將所做的修改合并到發(fā)布數(shù)據(jù)庫;SQL Server關(guān)系數(shù)據(jù)庫引擎能夠充分保護(hù)數(shù)據(jù)完整性,還可以將管理并發(fā)修改數(shù)據(jù)庫開銷到最小。</p><p> ?、芤子诎惭b,部署和使
34、用:</p><p> SQL Server由一系列的管理和開發(fā)工具組成,這些工具使得在多個(gè)站點(diǎn)上進(jìn)行SQL Server的安裝,部署,管理和使用變得更加容易。開發(fā)人員可以更加快速地交付SQL Server應(yīng)用程序,而且只需要進(jìn)行最少的安裝和管理就可以實(shí)現(xiàn)這些應(yīng)用程序。</p><p><b> ?、輸?shù)據(jù)倉庫:</b></p><p> 數(shù)
35、據(jù)倉庫是SQL Server中包含的用于分析取和分析匯總數(shù)據(jù)以進(jìn)行聯(lián)機(jī)分析處理的工具。這個(gè)功能只在Oracle和其他更昂貴的DBMS中才有。</p><p> SQL Server新特性:</p><p> 全面擴(kuò)展了SQL Server 7.0的性能,可靠性和易用性。增加了一系列的功能,具體如下:①在關(guān)系數(shù)據(jù)庫方面的增強(qiáng)②圖形管理增強(qiáng)③增強(qiáng)的聯(lián)合數(shù)據(jù)庫服務(wù)器</p>
36、<p> SQL Server工具和實(shí)用程序:</p><p> 1、企業(yè)管理器 2、服務(wù)管理器 3、查詢分析器 4、事件探查器5、導(dǎo)入和導(dǎo)出數(shù)據(jù) 6、服務(wù)器網(wǎng)絡(luò)使用工具 7、客戶端網(wǎng)絡(luò)使用工具 8、聯(lián)機(jī)幫助文檔</p><p> (2) SQL Server數(shù)據(jù)庫系統(tǒng)有關(guān)開發(fā)的特點(diǎn)[4]</p><p> ?、?NET 框架主機(jī)</p&
37、gt;<p> 使用SQL Server 2005,開發(fā)人員通過使用相似的語言,例如微軟的Visual C# .NET和微軟的Visual Basic,將能夠創(chuàng)立數(shù)據(jù)庫對象。開發(fā)人員還將能夠建立兩個(gè)新的對象——用戶定義的類和集合</p><p><b> ?、冢甔ML 技術(shù)</b></p><p> 在使用本地網(wǎng)絡(luò)和互聯(lián)網(wǎng)的情況下,在不同應(yīng)用軟件之間
38、散步數(shù)據(jù)的時(shí)候,可擴(kuò)展標(biāo)記語言(XML)是一個(gè)重要的標(biāo)準(zhǔn)。SQL Server 2005將會(huì)自身支持存儲(chǔ)和查詢可擴(kuò)展標(biāo)記語言文件。</p><p> ?、郏瓵DO.NET 2.0 版本</p><p> 從對SQL類的新的支持,到多活動(dòng)結(jié)果集(MARS),SQL Server 2005中的ADO.NET將推動(dòng)數(shù)據(jù)集的存取和操縱,實(shí)現(xiàn)更大的可升級性和靈活性。</p><
39、p><b> ?、埽鰪?qiáng)的安全性</b></p><p> SQL Server 2005中的新安全模式將用戶和對象分開,提供fine-grain access存取、并允許對數(shù)據(jù)存取進(jìn)行更大的控制。另外,所有系統(tǒng)表格將作為視圖得到實(shí)施,對數(shù)據(jù)庫系統(tǒng)對象進(jìn)行了更大程度的控制。</p><p> ⑤.Transact-SQL 的增強(qiáng)性能</p>&
40、lt;p> SQL Server 2005為開發(fā)可升級的數(shù)據(jù)庫應(yīng)用軟件,提供了新的語言功能。這些增強(qiáng)的性能包括處理錯(cuò)誤、遞歸查詢功能、關(guān)系運(yùn)算符PIVOT, APPLY, ROW_NUMBER和其他數(shù)據(jù)列排行功能等等。</p><p> ?、蓿甋QL 服務(wù)中介</p><p> SQL Server 2005為開發(fā)可升級的數(shù)據(jù)庫應(yīng)用軟件,提供了新的語言功能。這些增強(qiáng)的性能包括處理
41、錯(cuò)誤、遞歸查詢功能、關(guān)系運(yùn)算符PIVOT, APPLY, ROW_NUMBER和其他數(shù)據(jù)列排行功能等等。</p><p><b> ⑦.通告服務(wù)</b></p><p> 通告服務(wù)使得業(yè)務(wù)可以建立豐富的通知應(yīng)用軟件,向任何設(shè)備,提供個(gè)人化的和及時(shí)的信息,例如股市警報(bào)、新聞?dòng)嗛?、包裹遞送警報(bào)、航空公司票價(jià)等。在SQL Server 2005中,通告服務(wù)和其他技術(shù)更加
42、緊密地融合在了一起,這些技術(shù)包括分析服務(wù)、SQL Server Management Studio。</p><p><b> ⑧.Web服務(wù)</b></p><p> 使用SQL Server 2005,開發(fā)人員將能夠在數(shù)據(jù)庫層開發(fā)Web服務(wù),將SQL Server當(dāng)作一個(gè)超文本傳輸協(xié)議(HTTP)偵聽器,并且為網(wǎng)絡(luò)服務(wù)中心應(yīng)用軟件提供一個(gè)新型的數(shù)據(jù)存取功能。&
43、lt;/p><p><b> ?、幔畧?bào)表服務(wù)</b></p><p> 利用SQL Server 2005, 報(bào)表服務(wù)可以提供報(bào)表控制,可以通過Visual Studio 2005發(fā)行。</p><p> 上述九個(gè)方面構(gòu)成了數(shù)據(jù)庫系統(tǒng)的主要特征。</p><p> 第4.2節(jié) 系統(tǒng)邏輯模型</p>&l
44、t;p> E-R圖是直觀表示概念模型的工具,它有四個(gè)基本成分:</p><p><b> ◆ 矩形框,表示</b></p><p> 實(shí)體類型(考慮問題的對象)。</p><p> ◆ 菱形框,表示聯(lián)系類型(實(shí)體間的聯(lián)系)。</p><p> ◆ 橢圓形框,表示實(shí)體類型和聯(lián)系類型的屬性。對于關(guān)鍵碼的屬性,
45、在屬性名下劃一橫線。</p><p> ◆ 直線,聯(lián)系類型與其涉及的實(shí)體類型之間以直線連接。</p><p><b> 1</b></p><p><b> 111</b></p><p><b> N</b></p><p><b&g
46、t; NN</b></p><p><b> 1</b></p><p> 圖4·1總體網(wǎng)上論壇管理系統(tǒng)E-R圖</p><p> 圖4·2是網(wǎng)上論壇網(wǎng)民瀏覽E-R圖:</p><p><b> NM</b></p><p>&l
47、t;b> N</b></p><p><b> M</b></p><p> 圖4·2網(wǎng)上論壇網(wǎng)民瀏覽E-R圖</p><p> 圖4·3是網(wǎng)上論壇管理員E-R圖:</p><p><b> 1</b></p><p><
48、b> N</b></p><p><b> 1</b></p><p><b> 1</b></p><p><b> N</b></p><p><b> N</b></p><p><b>
49、 N</b></p><p><b> N</b></p><p><b> N</b></p><p><b> M</b></p><p> 圖4·3網(wǎng)上論壇管理員E-R圖</p><p> 圖4·4是網(wǎng)上
50、論壇注冊用戶E-R圖:</p><p><b> NM</b></p><p><b> N</b></p><p><b> 1</b></p><p><b> M</b></p><p><b> 1&
51、lt;/b></p><p><b> N</b></p><p><b> M</b></p><p> 圖4·4網(wǎng)上論壇注冊用戶E-R圖</p><p> 第4.3節(jié) 系統(tǒng)邏輯結(jié)構(gòu)設(shè)計(jì)</p><p> 表4·1為論壇管理員的屬性。此
52、表中包含屬性為:AdminID號,AdminName管理員名,和登陸密碼。</p><p> 表4·1論壇管理員信息表</p><p> 表4·2為論壇注冊用戶信息的屬性。此表中包含屬性為:UserID號,UserName用戶名,UserSex,Userpaw密碼等。</p><p> 表4·2論壇注冊用戶信息表</p>
53、;<p> 表4·3為論壇版塊信息的相關(guān)屬性。此表中包含屬性為:ModueID號,ModuleName版塊名稱和對應(yīng)的發(fā)表時(shí)間ModuleDate。</p><p> 表4·3論壇版塊信息表</p><p> 表4·4為論壇幫助信息的相關(guān)屬性。此表中包含屬性為:HelpID號,HelpNmae幫助名稱和對應(yīng)的幫助內(nèi)容HelpContent。
54、</p><p> 表4·4論壇幫助信息表</p><p> 表4·5是論壇回帖信息的相關(guān)屬性。此表中包含屬性為:RevertCardID回帖號,CardID帖子號,回帖內(nèi)容以及Date時(shí)間。</p><p> 表4·5論壇回帖信息表</p><p> 表4·6是論壇帖子信息的相關(guān)屬性。此表中包
55、含屬性為:CardID帖子號,UserID號,ModueID號,CardName帖子名稱,CardContent內(nèi)容以及CardIsPride(是否是精華帖)等。</p><p> 表4·6論壇帖子信息表</p><p> 第5章 詳細(xì)設(shè)計(jì)與具體實(shí)現(xiàn)</p><p> 本章為了使用戶更直觀的對系統(tǒng)進(jìn)行了解,主要介紹了一些模塊的界面、功能及代碼。<
56、;/p><p> 第5.1節(jié) 登陸模塊界面</p><p> 首先,為論壇管理員和注冊用戶都設(shè)置了相應(yīng)的登陸密碼,為的是確保論壇的數(shù)據(jù)不會(huì)被非法修改,要求正確的輸入用戶名和密碼。如圖5·1。</p><p> 如果輸入的用戶名,密碼以及用戶ID正確則進(jìn)入論壇,否則該論壇系統(tǒng)就會(huì)提示你輸入用戶名或密碼錯(cuò)誤。點(diǎn)擊確定按鈕則系統(tǒng)要求重新輸入。以免數(shù)據(jù)被不明原因
57、破壞和篡改,而造成無法估計(jì)的損失。</p><p><b> 圖5·1 登陸界面</b></p><p> 登陸界面主要代碼[5]:</p><p> public partial class BackDesk_Login_Login : System.Web.UI.Page</p><p><b&
58、gt; {</b></p><p> DataCon myCon = new DataCon();</p><p> ValidateCode code = new ValidateCode();</p><p> protected void Page_Load(object sender, EventArgs e)</p>&l
59、t;p><b> {</b></p><p><b> }</b></p><p> protected void btnLogin_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> Se
60、ssion["UserID"] = txtUserID.Text;//給DeliverCard.aspx頁傳值</p><p> Session["Name"] = txtUserName.Text;//給Index.aspx頁傳值</p><p><b> {</b></p><p> SqlCo
61、nnection sqlconn = myCon.getCon();</p><p> sqlconn.Open();</p><p> SqlCommand sqlcom = sqlconn.CreateCommand();</p><p> if (cbAdminLogin.Checked == true)</p><p><
62、b> {</b></p><p> sqlcom.CommandText = "select count(*) from tb_Admin where AdminID='" + txtUserID.Text </p><p> + "' and AdminName='" + txtUserName.Te
63、xt + "' and AdminPwd='" + txtPassword.Text + "'";</p><p> int countAdmin = Convert.ToInt32(sqlcom.ExecuteScalar());//獲取SQL語句的值 強(qiáng)制轉(zhuǎn)換成數(shù)值類型</p><p> if (countAdmin
64、> 0)</p><p><b> {</b></p><p> Page.Response.Redirect("AdminLogined.aspx");</p><p><b> }</b></p><p><b> else</b><
65、/p><p><b> {</b></p><p> Response.Write("<script lanuage=javascript>alert('用戶名或密碼有誤!');location='javascript:history.go(-1)'</script>");</p>
66、<p><b> return;</b></p><p><b> }</b></p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p
67、><p> sqlcom.CommandText = "select count(*) from tb_User where UserID='" + txtUserID.Text </p><p> + "'and UserLoginName='" + txtUserName.Text + "'and Use
68、rPwd='" + txtPassword.Text + "'";</p><p> int countUser = Convert.ToInt32(sqlcom.ExecuteScalar());</p><p> if (countUser > 0)</p><p><b> {</b&g
69、t;</p><p> Page.Response.Redirect("UserLogined.aspx");</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p>
70、<p> Response.Write("<script lanuage=javascript>alert('用戶名或密碼有誤!');location='javascript:history.go(-1)'</script>");</p><p><b> return;</b></p>
71、<p><b> }</b></p><p><b> } </b></p><p> sqlconn.Close();</p><p><b> }</b></p><p><b> }</b></p><p&
72、gt; 第5.2節(jié) 注冊模塊界面及功能</p><p> 如果瀏覽網(wǎng)民想發(fā)表自己的看法或者是評論相關(guān)的帖子,就要點(diǎn)擊注冊按鈕,進(jìn)入注冊界面來完成相關(guān)的注冊手續(xù),如圖5·2 所示:</p><p><b> 圖5·2 注冊界面</b></p><p> 注冊界面主要模塊代碼:</p><p>
73、 public partial class FrontDesk_Login_UserRegister : System.Web.UI.Page</p><p><b> {</b></p><p> DataCon myCon = new DataCon();</p><p> DataOperate sqlBind = new Data
74、Operate();</p><p> protected void Page_Load(object sender, EventArgs e)</p><p><b> {</b></p><p><b> }</b></p><p> protected void btnRegister
75、_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> string sqltest = "select * from tb_User where UserID='" + this.txtUserID.Text + "'";</p&g
76、t;<p> SqlConnection sqlconn = myCon.getCon();</p><p> sqlconn.Open();</p><p> SqlCommand sqlcom = new SqlCommand(sqltest, sqlconn);</p><p> SqlDataReader read = sqlcom.E
77、xecuteReader();</p><p> read.Read();</p><p> if (read.HasRows)</p><p><b> {</b></p><p> if (this.txtUserID.Text.Trim() == read["UserID"].ToStr
78、ing().Trim())</p><p><b> {</b></p><p> Response.Write("<script language='javascript'>alert('該用戶ID已經(jīng)注冊過');localtion='UserRegister.aspx'</script
79、>");</p><p><b> return;</b></p><p><b> }</b></p><p><b> }</b></p><p> string sqlstr = "insert into tb_User "&l
80、t;/p><p> + "(UserID,UserLoginName,UserSex,UserPwd,UserName,"</p><p> + "UserQuePwd,UserAnsPwd,UserTel,UserEmail,UserAddress,UserPostCode,UserQQ)"</p><p> + &quo
81、t;values('" + txtUserID.Text + "','" + txtLoginName.Text + "','" + ddlSex.Text</p><p> + "','" + txtPwd.Text + "','" + txtTNa
82、me.Text + "','" + txtQuePwd.Text</p><p> + "','" + txtAnsPwd.Text + "','" + txtTel.Text + "','" + txtEmail.Text</p><p>
83、+ "','" + txtAddress.Text + "','" + txtPostCode.Text + "','" + txtQQ.Text + "')";</p><p> sqlBind.DataCom(sqlstr);</p><p> R
84、esponse.Redirect("SuccessReg.aspx");</p><p><b> }</b></p><p> protected void btnTest_Click(object sender, EventArgs e)</p><p><b> {</b></p>
85、;<p> string sqlstr = "select * from tb_User where UserID='" + this.txtUserID.Text + "'";</p><p> SqlConnection sqlconn = myCon.getCon();</p><p> sqlconn.Op
86、en();</p><p> SqlCommand sqlcom = new SqlCommand(sqlstr, sqlconn);</p><p> SqlDataReader read = sqlcom.ExecuteReader();</p><p> read.Read();</p><p> if (read.HasRow
87、s)</p><p><b> {</b></p><p> if (this.txtUserID.Text.Trim() == read["UserID"].ToString().Trim())</p><p><b> {</b></p><p> Response.
88、Write("<script language='javascript'>alert('該用戶ID已經(jīng)注冊過');localtion='UserRegister.aspx'</script>");</p><p><b> return;</b></p><p><b&
89、gt; }</b></p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> Response.Write("<script language='jav
90、ascript'>alert('您可以進(jìn)行正常注冊');localtion='UserRegister.aspx'</script>");</p><p><b> }</b></p><p> read.Close();</p><p> sqlconn.Close()
91、;</p><p><b> }</b></p><p> 第5.3節(jié) 密碼找回界面及功能</p><p> 如果已經(jīng)注冊的用戶因不小心而忘記了密碼,則可以通過單擊“找回密碼”按鈕進(jìn)入密碼找回界面,回答正確的密碼提示問題來找回密碼。如圖5·3所示:</p><p> 圖5·3 密碼找回界面&l
92、t;/p><p> 密碼找回界面主要代碼:</p><p> public partial class FrontDesk_FindPwd_FindPwd : System.Web.UI.Page</p><p><b> {</b></p><p> DataCon myCon = new DataCon();&l
93、t;/p><p> protected void Page_Load(object sender, EventArgs e)</p><p><b> {</b></p><p> SqlConnection sqlconn = myCon.getCon();</p><p> sqlconn.Open();<
94、/p><p> SqlCommand sqlcom = new SqlCommand("select UserQuePwd from tb_User where UserID='"</p><p> + Convert.ToString(Session["UserID"]) + "'", sqlconn);//接
95、受FillUserID頁傳值</p><p> txtQuePwd.Text = Convert.ToString(sqlcom.ExecuteScalar());</p><p> sqlconn.Close();</p><p><b> }</b></p><p> protected void btnSu
96、re_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> SqlConnection sqlconn = myCon.getCon();</p><p> sqlconn.Open();</p><p> SqlCommand sqlcom
97、= new SqlCommand("select count(*) from tb_User where UserAnsPwd='"</p><p> + txtAnsPwd.Text + "' and UserID='" + Convert.ToString(Session["UserID"]) + "'&q
98、uot;, sqlconn);</p><p> int count = Convert.ToInt32(sqlcom.ExecuteScalar());</p><p> if (count > 0)</p><p><b> {</b></p><p> Page.Response.Redirect(&
99、quot;FindPwd.aspx");</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> Response.Write("<script>alert
100、('提示問題答案輸入有誤!');location='javascript:history.go(-1)'</script>");</p><p><b> return;</b></p><p><b> }</b></p><p> sqlconn.Close(
101、);</p><p><b> }</b></p><p><b> }</b></p><p> 第5.4節(jié) 管理員登陸界面及功能</p><p> 管理員輸入正確的管理員用戶名以及密碼,則登陸管理界面,在這里管理員可以對整個(gè)論壇的信息進(jìn)行瀏覽,評價(jià)以及修改。如圖5·4所示<
102、;/p><p> 圖5·4 管理員主界面</p><p> 管理員界面主要代碼[1]:</p><p> public partial class FrontDesk_Login_AdminLogined : System.Web.UI.Page</p><p><b> {</b></p>
103、<p> DataCon myCon = new DataCon();</p><p> DataOperate sqlBind = new DataOperate();</p><p> SqlConnection sqlconn;</p><p> protected void Page_Load(object sender, EventArg
104、s e)</p><p><b> {</b></p><p> if (Session["Name"] == null)</p><p><b> {</b></p><p> Response.Redirect("../../FrontDesk/Login/
105、Login.aspx");</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> labAdminName.Text = Session["Name"].T
106、oString() + ",";</p><p><b> dlBind();</b></p><p><b> }</b></p><p><b> }</b></p><p> public void dlBind()</p>&l
107、t;p><b> {</b></p><p> int curpage = Convert.ToInt32(this.labPage.Text);</p><p> PagedDataSource ps = new PagedDataSource();</p><p> sqlconn = myCon.getCon();</
108、p><p> sqlconn.Open();</p><p> string sqlstr = "select a.*,b.* from tb_Card as a join tb_Module as b on a.ModuleID=b.ModuleID";</p><p> SqlDataAdapter MyAdapter = new SqlD
109、ataAdapter(sqlstr, sqlconn);</p><p> DataSet ds = new DataSet();</p><p> MyAdapter.Fill(ds, "tb_Card");</p><p> ps.DataSource = ds.Tables["tb_Card"].DefaultVi
110、ew;</p><p> 第5.5節(jié) 注冊用戶界面及功能</p><p> 注冊用戶輸入正確的用戶名以及密碼,則登陸個(gè)人界面,在這里用戶可以對整個(gè)論壇的信息進(jìn)行瀏覽,評價(jià)以及對個(gè)人信息修改。如圖5·5所示</p><p> 圖5·5 注冊用戶界面</p><p> 注冊用戶界面主要代碼[5]:</p>
111、<p> public int CalculateUserPoint()</p><p><b> {</b></p><p> int P_Int_UserPoint;</p><p> sqlconn = myCon.getCon();</p><p> sqlconn.Open();</
112、p><p> string strCount = "select count(*) as id from tb_Card where UserID='" </p><p> + Session["UserID"].ToString() + "'";</p><p> SqlCommand
113、MyComm = new SqlCommand(strCount, sqlconn);</p><p> SqlDataReader dr = MyComm.ExecuteReader();</p><p> if (dr.Read())</p><p><b> {</b></p><p> P_Int_Use
114、rPoint = Int32.Parse(dr["id"].ToString());</p><p> string sqlstr = "update tb_User set UserMark='" + P_Int_UserPoint * 2 </p><p> + "' where UserID='"
115、 + Session["UserID"].ToString() + "'";</p><p> sqlBind.DataCom(sqlstr);</p><p><b> }</b></p><p><b> else</b></p><p>&
116、lt;b> {</b></p><p> P_Int_UserPoint = 0;</p><p><b> }</b></p><p> return P_Int_UserPoint;</p><p> sqlconn.Close();</p><p><b&g
117、t; }</b></p><p> 第5.6節(jié) 瀏覽網(wǎng)民界面及功能</p><p> 普通瀏覽網(wǎng)名在逛論壇時(shí)的界面,在這里只能瀏覽版塊和帖子以及相應(yīng)的回帖,沒有發(fā)表意見的權(quán)利。如圖5·6 所示:</p><p> 圖5·6 瀏覽網(wǎng)民界面</p><p> 瀏覽網(wǎng)民界面主要代碼[2]:</p>
118、;<p> public void dlBind()</p><p><b> {</b></p><p> int curpage = Convert.ToInt32(this.labPage.Text);</p><p> PagedDataSource ps = new PagedDataSource();</
119、p><p> sqlconn = myCon.getCon();</p><p> sqlconn.Open();</p><p> string sqlstr = "select a.*,b.* from tb_Card as a join tb_Module as b on a.ModuleID=b.ModuleID";</p>
120、<p> SqlDataAdapter MyAdapter = new SqlDataAdapter(sqlstr, sqlconn);</p><p> DataSet ds = new DataSet();</p><p> MyAdapter.Fill(ds, "tb_Card");</p><p> ps.DataS
121、ource = ds.Tables["tb_Card"].DefaultView;</p><p> ps.AllowPaging = true; //是否可以分頁</p><p> ps.PageSize = 2; //顯示的數(shù)量</p><p> ps.CurrentPageIndex = curpage - 1;</p>
122、<p><b> }</b></p><p> 第6章 運(yùn)行結(jié)果與測試</p><p> 經(jīng)過三個(gè)星期的分析設(shè)計(jì),本系統(tǒng)基本實(shí)現(xiàn)網(wǎng)上論壇的基本需要。</p><p> 系統(tǒng)測試:設(shè)計(jì)完成后進(jìn)行系統(tǒng)的測試,測試時(shí)進(jìn)行代碼審查,從數(shù)據(jù)類型,變量聲明,數(shù)據(jù)結(jié)構(gòu)進(jìn)行審查,然后進(jìn)行動(dòng)能測試,從不同的需求來尋求最大眾的需求。不斷測試,發(fā)
123、現(xiàn)錯(cuò)誤并記錄,修改代碼,測試條件使程序通過多層分支,判斷運(yùn)行結(jié)果從而完成測試。如果登錄界面用戶名或密碼輸入錯(cuò)誤的話,系統(tǒng)會(huì)自動(dòng)提示你的輸入有錯(cuò)誤,找回密碼中如果密碼提示問題答案問題輸入錯(cuò)誤,系統(tǒng)也會(huì)提示你的輸入有錯(cuò)誤。</p><p><b> 結(jié)束語</b></p><p> 經(jīng)過三個(gè)多星期的系統(tǒng)設(shè)計(jì),一個(gè)基于ASP.NET和SQL2005的學(xué)生學(xué)籍管理系統(tǒng)終于
124、做好了,雖然界面簡單,美化還有待提高,但對于用戶的登錄,退出,瀏覽,發(fā)表帖子,對他人發(fā)表帖子進(jìn)行相關(guān)評價(jià)以及對自己個(gè)人信息進(jìn)行修改等;管理員登陸還增加了對帖子修改頂為精華帖的功能有了全面的掌握,對于后臺數(shù)據(jù)庫的創(chuàng)建也有了深入的了解。在軟件設(shè)計(jì)中,完成了在前臺增,刪數(shù)據(jù),后臺數(shù)據(jù)庫能自動(dòng)更新,以及在后臺數(shù)據(jù)庫里修改數(shù)據(jù),前臺也一樣能更新,在前臺界面的設(shè)計(jì)中,代碼用了通用檢索函數(shù),這樣能使得許多模塊調(diào)用數(shù)據(jù)庫里的數(shù)據(jù)的代碼統(tǒng)一,也使得代碼精
125、簡節(jié)約。</p><p> 這次的系統(tǒng)設(shè)計(jì)只是一個(gè)基本的雛形,后期還需要美化,加以相關(guān)的圖片達(dá)到圖文并茂以及更多的智能控件來完善這個(gè)論壇。 </p><p><b> 參考文獻(xiàn)</b></p><p> [1] James Huddleston著,《ASP.NET入門經(jīng)典》,北京:清華大學(xué)出版社,2002</p><p
126、> [2] 張躍廷編著《 C#數(shù)據(jù)庫系統(tǒng)開發(fā)案例精選》,北京:人民郵電出版社,2007</p><p><b> 版社, 2003</b></p><p> [3] 薩師煊 王珊 主編,《數(shù)據(jù)庫系統(tǒng)概論》, 高等教育出版社,2005</p><p> [4] 陳克力,《SQL Server2005編程基礎(chǔ)》,北京:清華大
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 賓館管理系統(tǒng)c#數(shù)據(jù)庫課程設(shè)計(jì)
- 數(shù)據(jù)庫原理與應(yīng)用課程設(shè)計(jì)---bbs論壇數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)--數(shù)據(jù)庫系統(tǒng)原理
- oracle數(shù)據(jù)庫課程設(shè)計(jì)---在線考試系統(tǒng)數(shù)據(jù)庫
- 數(shù)據(jù)庫課程設(shè)計(jì)--數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)-在線考試系統(tǒng)
- 數(shù)據(jù)庫原理課程設(shè)計(jì)---教室管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 《數(shù)據(jù)庫系統(tǒng)原理》課程設(shè)計(jì)
- 數(shù)據(jù)庫原理課程設(shè)計(jì)
- 在線考試系統(tǒng)數(shù)據(jù)庫課程設(shè)計(jì)
- 數(shù)據(jù)庫原理課程設(shè)計(jì)---圖書管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 《數(shù)據(jù)庫原理》課程設(shè)計(jì)
- 數(shù)據(jù)庫系統(tǒng)原理課程設(shè)計(jì)
- 數(shù)據(jù)庫系統(tǒng)原理課程設(shè)計(jì)--銀行儲(chǔ)蓄系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫原理課程設(shè)計(jì)---個(gè)人事物管理數(shù)據(jù)庫課程設(shè)計(jì)
- 數(shù)據(jù)庫系統(tǒng)原理課程設(shè)計(jì)--人事管理系統(tǒng)數(shù)據(jù)庫
- 《數(shù)據(jù)庫系統(tǒng)原理》課程網(wǎng)站課程設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)--- 論壇管理信息系統(tǒng)
- c#數(shù)據(jù)庫事務(wù)
- 數(shù)據(jù)庫原理課程設(shè)計(jì)報(bào)告
評論
0/150
提交評論