在線論壇系統(tǒng)數(shù)據(jù)庫原理課程設(shè)計(jì)c#_第1頁
已閱讀1頁,還剩29頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論