ASP_NET_網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用_第1頁
ASP_NET_網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用_第2頁
ASP_NET_網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用_第3頁
ASP_NET_網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用_第4頁
ASP_NET_網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、南 開 大 學(xué)本科生畢業(yè)論文 ( 設(shè)計 )基于數(shù)據(jù)庫 ,asp.net上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用學(xué)號:01101010027姓名:杜永浩年級:2001 級學(xué)院:現(xiàn)代遠程教育學(xué)院專業(yè):計算機科學(xué)與技術(shù)完成日期:二 oo五 年 五 月指導(dǎo)教師:從躍進、王娟基于數(shù)據(jù)庫 ,asp.net上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用sql,asp.net network teaching system姓名:杜永浩專業(yè):計算機科學(xué)與技術(shù)指導(dǎo)教師:從躍進、王娟答辯日期:基于數(shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用摘要第 1 頁摘要本文主要介紹了我們開發(fā)的網(wǎng)上輔助教學(xué)系統(tǒng)的網(wǎng)站。此網(wǎng)站能夠?qū)崿F(xiàn)學(xué)生

2、從題庫中抽取題目,回答題目,老師向題庫中添加題目,修改題目及管理員添加用戶,刪除用戶等功能。文中介紹了制作此網(wǎng)站所需要的開發(fā)工具及開發(fā)過程中所應(yīng)用到的各種實用技術(shù),總體上列舉了整個網(wǎng)站的組成和基本功能的實現(xiàn),并且詳細介紹了網(wǎng)站數(shù)據(jù)庫的搭建和用戶登陸功能的實現(xiàn)。關(guān)鍵字sql server 數(shù)據(jù)庫, asp.net ,ado.net ,sql 基于數(shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用摘要第 2 頁abstract title :sql,asp.net network teaching system author :du yonghao major:computer scien

3、ce and technology advisor :wang juan this article introduces the web server of network teaching system that we designed. in the web server of network teaching system, student cramp out the title, answer the title from it, teacher add to the title, amend the title in it, manager add to the user, dele

4、te the user in it. in the artitle, we list several technologies used in the software, tell every modules function together with its implement summarily, and discuss the sql server 2000 database and user to land function.keyword sql server database,asp.net ,ado.net ,sql 基于數(shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)

5、用內(nèi)容目錄第 3 頁內(nèi) 容 目 錄摘要 . 1abstract . 2第一章前言 . 61.1論文背景介紹 . 61.2問題提出 . 6第二章開發(fā)工具以及語言環(huán)境的選擇 . 72.1sql server . 72.2關(guān)系數(shù)據(jù)庫標準語言sql . 92.3asp.net . 102.4ado.net 訪問數(shù)據(jù)庫的原理及優(yōu)勢 . 11第三章網(wǎng)站總體設(shè)計及功能分析 . 133.1總體構(gòu)成設(shè)計 . 133.1.1總體設(shè)計分析 . 133.1.2系統(tǒng)構(gòu)成 . 133.2系統(tǒng)功能分析 . 14第四章數(shù)據(jù)庫設(shè)計與登陸功能的實現(xiàn) . 154.1數(shù)據(jù)庫的搭建 . 154.1.1數(shù)據(jù)庫中表單及關(guān)系圖的建立 . 1

6、54.1.2數(shù)據(jù)庫與網(wǎng)頁連接方法分析 . 194.2系統(tǒng)登陸功能 . 204.2.1系統(tǒng)登陸功能的主要代碼及其實現(xiàn) . 20第五章總結(jié) . 23參考文獻 . 24致謝 . 25基于數(shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用內(nèi)容目錄第 4 頁圖 目 錄圖 2-1 sql 企業(yè)管理器 . 8圖 2-2 asp.net系統(tǒng)結(jié)構(gòu)模型 . 10圖 3-1 系統(tǒng)構(gòu)成圖 . 14圖 4-1 數(shù)據(jù)庫關(guān)系圖 . 18圖 4-2 系統(tǒng)登陸界面 . 20基于數(shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用內(nèi)容目錄第 5 頁表 目 錄表 4-1學(xué)生表結(jié)構(gòu) . 15表 4-2教師表結(jié)構(gòu) . 1

7、6表 4-3管理員表結(jié)構(gòu) . 16表 4-4選擇題表結(jié)構(gòu) . 17表 4-5判斷題表結(jié)構(gòu) . 18基于數(shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用前言第 6 頁第一章前言1.1論文背景介紹在 internet飛速發(fā)展的今天,互聯(lián)網(wǎng)成為人們快速獲取、發(fā)布和傳遞信息的重要渠道,它在人們政治、經(jīng)濟、學(xué)習(xí)、生活等各個方面發(fā)揮著重要的作用。因特網(wǎng)技術(shù)與印刷出版、飛機、個人電腦并列,作為歷史上最具革命性的技術(shù)之一。在沉寂了20 多年后,因特網(wǎng)走出不為人所知的角落,引起來了全世界所有人的關(guān)注和想象。眾所周知, internet上發(fā)布信息主要是通過網(wǎng)站來實現(xiàn)的,獲取信息也是要在internet“

8、海洋”中按照一定的檢索方式將所需要的信息從網(wǎng)站上下載下來。因此網(wǎng)站建設(shè)在 internet應(yīng)用上的地位顯而易見,它已成為政府、企事業(yè)單位信息化建設(shè)中的重要組成部分,從而倍受人們的重視。1.2問題提出伴隨著網(wǎng)絡(luò)的出現(xiàn),網(wǎng)站逐漸融入人們的生活??焖偌皶r的新聞瀏覽,五彩繽紛的網(wǎng)上信息,網(wǎng)絡(luò)與人們的生活息息相關(guān)。制作網(wǎng)站是企業(yè)和個人的宣傳自己的重要手段,同時也是學(xué)習(xí)者獲取學(xué)習(xí)信息的重要手段,尤其是在教育領(lǐng)域,在素質(zhì)教育與終身教育成為必然的今天,人們對信息的需求有了更新,更高的要求,而網(wǎng)站由于本身所具有的信息量大,傳遞快速,沒有時空限制等特點恰好滿足這種要求。所以網(wǎng)站也逐漸成為一種新興的教育資源。本文介

9、紹的正是我們對網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與設(shè)計過程,包括開發(fā)工具以及語言環(huán)境的選擇、設(shè)計思想、具體實施、調(diào)試以及運行的一系列過程。下面就讓我們進入論文的主體部分?;跀?shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用開發(fā)工具以及語言環(huán)境的選擇第 7 頁第二章開發(fā)工具以及語言環(huán)境的選擇2.1sql server sql server 最早是由關(guān)系數(shù)據(jù)庫sybase演變而來的。1988年由 sybase, microsoft ,ashton-tate 三家公司共同開發(fā)了os/2版本,后來又應(yīng)用于 windows nt操作系統(tǒng)中。 1994年 microsoft公司和 sybase 公司的合作正

10、式結(jié)束, 如今 sybase 公司致力于開發(fā)基于unix下的數(shù)據(jù)庫系統(tǒng),而microsoft公司繼續(xù)開發(fā)基于 windows nt和 sql server 系列數(shù)據(jù)庫系統(tǒng)。其發(fā)展歷程如下:1995 年發(fā)行了 sql server6.0版本1996 年發(fā)行了 sql server6.5版本1998 年發(fā)行了 sql server7.0版本2000 年正式發(fā)行了 sql server2000 版本在 sql server的發(fā)展歷程中,有三個具有里程碑的版本:sql server6.5 、sql server7.0以及 sql server2000 ,下面我們重點介紹一下sql server2000

11、 的新特點:簡單的圖形化管理工具sql server 企業(yè)管理器是一個基于圖形用戶界面的繼承管理工具,利用它可以配置管理 sql server服務(wù)器,管理數(shù)據(jù)庫和數(shù)據(jù)庫對象,備份和恢復(fù)數(shù)據(jù),調(diào)度任務(wù)和管理警報,實現(xiàn)數(shù)據(jù)復(fù)制和數(shù)據(jù)轉(zhuǎn)換等。它的界面圖2-1 所示:基于數(shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用開發(fā)工具以及語言環(huán)境的選擇第 8 頁圖 2-1 sql 企業(yè)管理器隱含的并發(fā)控制能力sql server 利用動態(tài)鎖定功能防止用戶在查詢和更新并發(fā)操作時相互間發(fā)生沖突,動態(tài)鎖定是隱含的,用戶不必關(guān)心縮定過程。豐富的編程接口工具sql server2000 提供了豐富的編程接口工

12、具,為用戶進行程序設(shè)計提供了更大的選擇余地。此外,它還支持odbc 和 ole db規(guī)范,可以使用 odbc 和 ole db接口函數(shù)訪問 sql server 數(shù)據(jù)庫。多線程體系結(jié)構(gòu) sql server 支持多線程操作,在多用戶并發(fā)訪問時,系統(tǒng)在產(chǎn)生較小額外負擔的情況下,能夠進行并發(fā)處理,從而減小內(nèi)存需求,提高系統(tǒng)的吞吐量,在用戶數(shù)量增加時,sql server 的運行速度也不會明顯減慢。具有很好的伸縮性sql server2000 既能運行在 windows 2000操作系統(tǒng)下,又可以運行在windows nt ,基于數(shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用開發(fā)工具以及

13、語言環(huán)境的選擇第 9 頁workstation ,windows nt server 等操作系統(tǒng)下,并且利用了nt的許多功能,如發(fā)送和接受消息,管理登錄安全性等。同時,sql server 也可以很好地與 microsoft backoffice產(chǎn)品集成?;?sql server 以上的 5 個特點,我們選擇了它為網(wǎng)站搭建數(shù)據(jù)庫, 使網(wǎng)站能夠更快更好的完成數(shù)據(jù)庫操作。2.2關(guān)系數(shù)據(jù)庫標準語言sql sql是一種介于關(guān)系代數(shù)與關(guān)系演算之間的結(jié)構(gòu)化查詢語言,其功能并不僅僅是查詢。sql是一個通用的、功能極強的關(guān)系數(shù)據(jù)庫語言。sql之所以能夠為用戶和業(yè)界所接受,并成為國際標準,是因為它是一個綜合的

14、、功能極強同時又簡捷易學(xué)的語言。sql 語言集數(shù)據(jù)查詢(data query) 、數(shù)據(jù)操縱 (data manipulation)、數(shù)據(jù)定義 (data definition)和數(shù)據(jù)控制 (data control)功能與一體,主要特點包括:統(tǒng)一的語言sql可用于所有用戶的db活動模型,包括系統(tǒng)管理員、數(shù)據(jù)庫管理員、應(yīng)用程序員、決策支持系統(tǒng)人員及許多其它類型的終端用戶。基本的sql命令只需很少時間就能學(xué)會,最高級的命令在幾天內(nèi)便可掌握。sql為許多任務(wù)提供了命令,包括:查詢數(shù)據(jù)在表中插入、修改和刪除記錄,建立、修改和刪除數(shù)據(jù)對象,控制對數(shù)據(jù)和數(shù)據(jù)對象的存取,保證數(shù)據(jù)庫一致性和完整性。以前的數(shù)據(jù)

15、庫管理系統(tǒng)為上述各類操作提供單獨的語言,而sql將全部任務(wù)統(tǒng)一在一種語言中高度非過程化sql是一個非過程化的語言,因為它一次處理一個記錄,對數(shù)據(jù)提供自動導(dǎo)航。sql允許用戶在高層的數(shù)據(jù)結(jié)構(gòu)上工作,而不對單個記錄進行操作,可操作記錄集。所有sql語句接受集合作為輸入,返回集合作為輸出。sql的集合特性允許一條sql語句的結(jié)果作為另一條 sql語句的輸入。 sql不要求用戶指定對數(shù)據(jù)的存放方法。這種特性使用戶更易集中精力于要得到的結(jié)果。所有sql語句使用查詢優(yōu)化器,它是rdbms 的一部分,由它決定對指定數(shù)據(jù)存取的最快速度的手段。查詢優(yōu)化器知道存在什么索引,使用在哪兒合適,而用戶從不需要知道表是否

16、有索引,表有什么類型的索引面向集合的操作方式基于數(shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用開發(fā)工具以及語言環(huán)境的選擇第 10 頁sql語言采用集合操作方式,不僅操作對象、查找結(jié)果可以是元組的集合,而且一次插入、刪除、更新操作的對象也可以是元組的集合。以同一種語法結(jié)構(gòu)提供兩種使用方式sql語言既是自含式語言,又是嵌入式語言。作為自含式語言,它能夠獨立地用于聯(lián)機交互的使用方式,用戶可以在終端鍵盤上直接鍵入sql命令對數(shù)據(jù)庫進行操作,作為嵌入式語言, sql語句能夠嵌入到高級語言 ( 例如 c,cobol,fortran,pl/1) 程序中,供程序員設(shè)計程序時使用。而在兩種不同的使用

17、方式下,sql語言的語法結(jié)構(gòu)基本上是一致的。這種以統(tǒng)一的語法結(jié)構(gòu)提供兩種不同的使用方式的做法,提供了極大的靈活性與方便性。語言簡捷,易學(xué)易用sql語言功能極強,但由于設(shè)計巧妙,語言十分簡捷,完成核心功能只用了9 個動詞,sql語言接近英語口語,因此容易學(xué)習(xí),容易使用。2.3asp.net asp全名 active server pages,是一套微軟開發(fā)的服務(wù)器端腳本環(huán)境,產(chǎn)生和運行動態(tài)的、交互的、高性能的web服務(wù)應(yīng)用程序。 asp采用腳本語言 vbscript 或 jscript作為開發(fā)語言。 asp的出現(xiàn)使得網(wǎng)絡(luò)應(yīng)用程序開發(fā)變得相當容易,但由于它是通過解釋執(zhí)行,而且腳本程序和靜態(tài)網(wǎng)頁混合

18、在一起,所以從程序的執(zhí)行速度和程序的可移植性上都存在一些問題,由于這樣的原因,微軟推出了asp.net 。asp.net結(jié)構(gòu)是一個三層系統(tǒng):ui 層、業(yè)務(wù)邏輯層和數(shù)據(jù)層,如圖2-2 所示。圖 2-2 asp.net 系統(tǒng)結(jié)構(gòu)模型由于 asp本身的局限性使得系統(tǒng)有一些不可克服的缺陷,而采取了asp.net 技術(shù)的系統(tǒng)性能上有了很大的改善,其主要表現(xiàn)在以下幾方面:基于數(shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用開發(fā)工具以及語言環(huán)境的選擇第 11 頁由于 asp頁面每次打開都必須經(jīng)過先編譯后解釋的過程,所以頁面在反復(fù)打開時速度沒有任何提升,而asp.net 頁面只需要一次編譯后不需要重

19、新編譯,直到該頁面被修改或 web應(yīng)用程序重新啟動。這使得在多次訪問時速度有了極大的提升。由于 asp沒有提供任何輸出數(shù)據(jù)為內(nèi)容的元件,所以在使用asp撰寫數(shù)據(jù)庫頁面時只能借助ado的 recordset 對象逐筆讀取記錄,而asp.net通過 ado.net提供的datagrid 等數(shù)據(jù)庫元件可以直接和數(shù)據(jù)庫聯(lián)系。asp.net 支持應(yīng)用程序的實時更新。管理員不必關(guān)掉網(wǎng)絡(luò)服務(wù)器或者甚至不用停止應(yīng)用程序的運行就可以更新應(yīng)用文件。應(yīng)用程序文件永遠不會被加鎖,因此甚至在程序運行時文件就可以被覆蓋。當文件更新后,系統(tǒng)會溫和地轉(zhuǎn)換到新的版本。asp.net 采取code-behind 方式編寫代碼使得

20、代碼更易于編寫,結(jié)構(gòu)更清晰,降低了系統(tǒng)的開發(fā)與維護的復(fù)雜度和費用。2.4ado.net 訪問數(shù)據(jù)庫的原理及優(yōu)勢與數(shù)據(jù)庫相連, ado.net 提供了如下 3 種方式:通過 odbc 相連;通過 oledb 相連;直接與 sql server 相連。 3 種方式由于應(yīng)用層次的差異,使得效率由低到高,獨立性由高到低。對于相連數(shù)據(jù)庫的數(shù)據(jù)處理,也有2 種方式,即一種是通過dataset 來隔離異構(gòu)的數(shù)據(jù)源,另一種是以流方式從數(shù)據(jù)源讀取(datareader 方式 ) 。傳統(tǒng)的應(yīng)用程序是通過先建立到數(shù)據(jù)庫的連接,在程序的整個運行過程中維護連接的方式來設(shè)計的。 asp.net采取了斷開連接方式的數(shù)據(jù)結(jié)構(gòu)

21、。當瀏覽器向web服務(wù)器請求網(wǎng)頁時,服務(wù)器處理這個請求,并將所請求的網(wǎng)頁發(fā)送給瀏覽器,然后連接就被斷開,直到瀏覽器發(fā)出下一個請求。 ado.net的另一個創(chuàng)新是引入了數(shù)據(jù)集(dataset) 。 一個數(shù)據(jù)集是內(nèi)存中提供數(shù)據(jù)關(guān)系圖的高速緩沖區(qū)。數(shù)據(jù)集對數(shù)據(jù)源一無所知,它們可以由程序或通過從數(shù)據(jù)倉庫中調(diào)入數(shù)據(jù)而被生成、填充。不論數(shù)據(jù)從何處獲取,數(shù)據(jù)集都是通過使用同樣的程序模板而被操作的,并且它使用相同的潛在的數(shù)據(jù)緩沖區(qū)。由于 ado.net 采用不連接的數(shù)據(jù)集,可以把數(shù)據(jù)集想象是一個本地的小型數(shù)據(jù)庫,并且采用關(guān)系數(shù)據(jù)庫的模型,通過豐富的程序接口可以更快速、更有效的處理數(shù)據(jù)。ado.net 提供對

22、microsoft sql server等數(shù)據(jù)源以及通過ole db和 xml公開的數(shù)據(jù)源的一致訪問。數(shù)據(jù)共享使用者應(yīng)用程序可以使用ado.net 來連接到這些數(shù)據(jù)源,并檢基于數(shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用開發(fā)工具以及語言環(huán)境的選擇第 12 頁索、操作和更新數(shù)據(jù)。ado.net有效地從數(shù)據(jù)操作中將數(shù)據(jù)訪問分解為多個可以單獨使用或一前一后使用的不連接組件。 ado.net 包含用于連接到數(shù)據(jù)庫、執(zhí)行命令和檢索結(jié)果的.net數(shù)據(jù)提供程序??梢灾苯犹幚頇z索到的結(jié)果,或?qū)⑵浞湃隺do.net dataset對象,以便與來自多個源的數(shù)據(jù)或在層之間進行遠程處理的數(shù)據(jù)組合在一起,

23、以特殊方式向用戶公開。ado.net的dataset 對象也可以獨立于 .net數(shù)據(jù)提供程序使用,以管理應(yīng)用程序本地的數(shù)據(jù)或源自xml的數(shù)據(jù)?;跀?shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用網(wǎng)站總體設(shè)計及功能分析第 13 頁第三章網(wǎng)站總體設(shè)計及功能分析3.1 總體構(gòu)成設(shè)計3.1.1總體設(shè)計分析要實現(xiàn)網(wǎng)絡(luò)教學(xué)系統(tǒng)的功能,一個重要的技術(shù)就是要實現(xiàn)通過瀏覽器來訪問數(shù)據(jù)庫。 這個功能可以通過 asp.net 與 ado.net 的結(jié)合來完成。ado.net 是微軟提供的使 asp.net具有訪問數(shù)據(jù)庫功能的構(gòu)件。 在設(shè)計用戶界面的時候, 把頁面都設(shè)計成 asp的,然后用 asp去訪問數(shù)據(jù)

24、庫。用asp訪問數(shù)據(jù)庫涉及創(chuàng)建數(shù)據(jù)源、創(chuàng)建鏈接、創(chuàng)建數(shù)據(jù)對象、操作數(shù)據(jù)對象、關(guān)閉并釋放數(shù)據(jù)對象等環(huán)節(jié)。這其中又涉及dsn(data source name)的配置以及用asp訪問數(shù)據(jù)庫的各種語法格式。在實際的設(shè)計中, 對數(shù)據(jù)庫的訪問操作設(shè)計是結(jié)合用戶界面的設(shè)計同時進行的。換句話說,我們要設(shè)計的用戶界面幾乎都是asp格式的。用戶界面的設(shè)計包括網(wǎng)頁的外觀設(shè)計和網(wǎng)頁的層次結(jié)構(gòu)設(shè)計。其中網(wǎng)頁的外觀設(shè)計可借助網(wǎng)頁設(shè)計工具來進行,其基本原則是:實用、方便和美觀。網(wǎng)頁的層次結(jié)構(gòu)應(yīng)能滿足教學(xué)系統(tǒng)的基本需要。具體來說,一方面學(xué)生能夠通過網(wǎng)站方便地登錄進行測試和考試,并能查閱本人考試成績。另一方面教師能夠通過網(wǎng)站

25、方便地對考生和題庫進行后臺管理。3.1.2系統(tǒng)構(gòu)成網(wǎng)絡(luò)輔助教學(xué)系統(tǒng)選擇登陸身份管理員管理系統(tǒng)刪除用戶添加用戶教師出題系統(tǒng)修改題目添加題目學(xué)生答題系統(tǒng)平時練習(xí)進行考試基于數(shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用網(wǎng)站總體設(shè)計及功能分析第 14 頁圖 3-1 系統(tǒng)構(gòu)成圖我們設(shè)計的這個網(wǎng)絡(luò)輔助教學(xué)系統(tǒng)的網(wǎng)站,主要由以上幾大部分組成,包括,教師出題子系統(tǒng),管理員維護子系統(tǒng)和學(xué)生答題子系統(tǒng)。如圖3-1 所示:3.2系統(tǒng)功能分析此網(wǎng)站主要以網(wǎng)絡(luò)輔助教學(xué)為主, 其所能實現(xiàn)的功能主要分為3 大塊:包括學(xué)生測試功能,教師出題功能及管理員管理功能。學(xué)生測試功能中包括答題類型( 測試和考試 ) 和題

26、目類型 ( 選擇和判斷 ),學(xué)生可以根據(jù)自己的喜好自由選擇,選擇完畢后,系統(tǒng)會隨機抽出相應(yīng)的題目進行測試,當回答完后,系統(tǒng)會自動提示對錯,并給出相應(yīng)的正確答案和成績。教師出題功能中包括出題和修改題,教師既可以將題目輸入到數(shù)據(jù)庫中,也可以從數(shù)據(jù)庫中調(diào)出題目進行修改和更新,十分方便和簡捷。管理員功能中包括想數(shù)據(jù)庫中添加和刪除用戶,這些用戶包括老師,學(xué)生,和管理員。這些就是網(wǎng)站基本的功能,下面我們主要介紹一下網(wǎng)站后臺數(shù)據(jù)庫的搭建和登陸功能的實現(xiàn)?;跀?shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用數(shù)據(jù)庫設(shè)計和登陸功能的實現(xiàn)第 15 頁第四章數(shù)據(jù)庫設(shè)計與登陸功能的實現(xiàn)4.1數(shù)據(jù)庫的搭建4.1

27、.1數(shù)據(jù)庫中表單及關(guān)系圖的建立網(wǎng)絡(luò)輔助教學(xué)系統(tǒng)的開發(fā)設(shè)計工作包括運行于前臺的網(wǎng)頁頁面的設(shè)計以及運行于后臺的數(shù)據(jù)庫的設(shè)計。其中的數(shù)據(jù)庫設(shè)計就是通過microsoft sql server 建立數(shù)據(jù)庫,根據(jù)網(wǎng)站所能實現(xiàn)的功能,我們建了一個名為“bishe ”的數(shù)據(jù)庫,在數(shù)據(jù)庫中建立5 個表,分別存儲,學(xué)生名,教師名,管理員,選擇題, 判斷題,題目,答案等。定義了各個字段的數(shù)據(jù)類型,并設(shè)置了數(shù)據(jù)庫的訪問權(quán)限和修改權(quán)限。前臺建立了一個比較人性化的界面。利用ado.net 調(diào)用 sql語句操縱系統(tǒng)的數(shù)據(jù)源,實現(xiàn)了的查詢,插入,刪除,修改,更新等功能,利用vbscript實現(xiàn)了后臺的運算和事務(wù)處理。下面我

28、們來一起分析一下數(shù)據(jù)庫中5 個表單的構(gòu)成。(1)學(xué)生表表 4-1 學(xué)生表結(jié)構(gòu)表中包含 2 個字段student 學(xué)生名char 類型 最大允許長度為 10 個字符,主鍵,必填字段,不允許為空。psd 用戶口令nvarchar 類型 最大允許長度為 50 個字符,不允許為空。(2)教師表基于數(shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用數(shù)據(jù)庫設(shè)計和登陸功能的實現(xiàn)第 16 頁表 4-2 教師表結(jié)構(gòu)表中包含 2 個字段teacher 教師名char 類型 最大允許長度為 10 個字符,主鍵,必填字段,不允許為空。psd 用戶口令nvarchar 類型 最大允許長度為 50 個字符,不允許

29、為空。(3)管理員表表 4-3 管理員表結(jié)構(gòu)表中包含 2 個字段manager 管理員名char 類型 最大允許長度為 10 個字符,主鍵,必填字段,不允許為空。psd 用戶口令nvarchar 類型 最大允許長度為 50 個字符,不允許為空。(4)選擇題表基于數(shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用數(shù)據(jù)庫設(shè)計和登陸功能的實現(xiàn)第 17 頁表 4-4 選擇題表結(jié)構(gòu)表中包含 7 個字段tid 題號int類型 長度為 4 個字節(jié),不允許空。title 題目char 類型 最大允許長度為 200 個字符,主鍵,必填字段,不允許空。answer 正確答案char 類型 最大允許長度為

30、200 個字符,不允許空。a 選項 a char 類型 最大允許長度為 200 個字符,不允許空。b 選項 b char 類型 最大允許長度為 200 個字符,不允許空。c 選項 c char 類型 最大允許長度為 200 個字符,不允許空。d 選項 d char 類型 最大允許長度為 200 個字符,不允許空。teacher 教師名char 類型 最大允許長度為 10 個字符,不允許為空。(5)判斷題表基于數(shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用數(shù)據(jù)庫設(shè)計和登陸功能的實現(xiàn)第 18 頁表 4-5 判斷題表結(jié)構(gòu)表中包含 3 個字段tid 題號int類型 長度為 4 個字節(jié),不允

31、許空。title 題目nvarchar 類型 最大允許長度為 200 個字符,主鍵,必填字段,不允許空。answer 正確答案nchar 類型 最大允許長度為 10 個字符,不允許空。teacher 教師名char 類型 最大允許長度為 10 個字符,不允許為空。圖 4-1 數(shù)據(jù)庫關(guān)系圖基于數(shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用數(shù)據(jù)庫設(shè)計和登陸功能的實現(xiàn)第 19 頁建立好表和關(guān)系圖,我們就可以向表單中添加所需要的數(shù)據(jù)( 包括用戶名,試題,答案等等 ) , 完成數(shù)據(jù)庫的功能。另外, 在 sql sever 屬性-安全性中,我們選擇了 sql server和 windows混合

32、模式登陸數(shù)據(jù)庫,登陸名和密碼分別為sa 和 111。4.1.2數(shù)據(jù)庫與網(wǎng)頁連接方法分析從總體上看,本網(wǎng)站使用了 b/s 模式,即前臺的網(wǎng)頁界面與后臺的數(shù)據(jù)庫處理系統(tǒng)。在此次網(wǎng)站的設(shè)計過程中, 我們主要使用了ado.net 方式訪問數(shù)據(jù)庫, 下面我們結(jié)合登陸頁面中的管理員登陸代碼來分析一下這種方式。ado.net 方式訪問數(shù)據(jù)庫dim con as new sqlconnection(constr) 建立一個新的與 sql數(shù)據(jù)源的連接 sql = select * from manager where manager= & userid da = new sqldataadapter(s

33、ql, con) ds = new dataset() 首先聲明一個字符串sql 即為要執(zhí)行的 sql語句。然后由對象con 執(zhí)行,執(zhí)行結(jié)果將返回 dataset,解析更新,記錄在數(shù)據(jù)集dataset 中。da.fill(ds, manager) if ds.tables(manager).rows.count = 1 then if pwd = trim(ds.tables(manager).rows(0)(psd) then session(userid) = userid response.redirect(mcontrol.aspx) else lbinfo.text = passwo

34、rd error! end if else lbinfo.text = the user doesnt exist! end if 對數(shù)據(jù)集data 進行操作,并驗證用戶名和密碼是否匹配,如果匹配則進入mcontrol.aspx界面,不匹配則顯示password error!或 the user doesnt exist! 總的說來, ado.net 訪問數(shù)據(jù)庫,一般要通過以下四個步驟:1、 創(chuàng)建一個到數(shù)據(jù)庫的鏈路,即ado.connection;2、 查詢一個數(shù)據(jù)集合,即執(zhí)行sql ,產(chǎn)生一個 recordset ;3、 對數(shù)據(jù)集合進行需要的操作;4、 關(guān)閉數(shù)據(jù)鏈路?;跀?shù)據(jù)庫 ,asp.n

35、et 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用數(shù)據(jù)庫設(shè)計和登陸功能的實現(xiàn)第 20 頁4.2系統(tǒng)登陸功能4.2.1系統(tǒng)登陸功能的主要代碼及其實現(xiàn)系統(tǒng)登陸界面由兩個文本輸入框textbox 和一個下拉列表框dropdownlist, 用于區(qū)分用戶的身份,如圖4-1 所示:圖 4-2 系統(tǒng)登陸界面代碼分析:dim sql as stringdim constr as string = server = ; uid = ; pwd = ; database = bishe dim con as new sqlconnection(constr) dim da as sqldataadapter dim ds

36、as dataset server =sql服務(wù)器名稱或 ip 地址; uid =用戶名 ; pwd =數(shù)據(jù)庫密碼 ; database=數(shù)據(jù)庫名稱管理員登陸模塊:if id = 管理員 then 基于數(shù)據(jù)庫 ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用數(shù)據(jù)庫設(shè)計和登陸功能的實現(xiàn)第 21 頁 sql = select * from manager where manager= & userid da = new sqldataadapter(sql, con) ds = new dataset() da.fill(ds, manager) if ds.tables(manager

37、).rows.count = 1 then if pwd = trim(ds.tables(manager).rows(0)(psd) then session(userid) = userid response.redirect(mcontrol.aspx) else lbinfo.text = password error! end if else lbinfo.text = the user doesnt exist! end if 教師登陸模塊:elseif id = 教師 then sql = select * from teacher where teacher= & us

38、erid da = new sqlclient.sqldataadapter(sql, con) ds = new dataset() da.fill(ds, teacher) if ds.tables(teacher).rows.count = 1 then if pwd = trim(ds.tables(teacher).rows(0)(psd) then session(userid) = userid response.redirect(jiaoshi.aspx) else lbinfo.text = password error! end if else lbinfo.text = the user doesnt exist! end if學(xué)生登陸模塊:elseif id = 學(xué)生 then sql = select * from student where student= & userid da = new sqlclient.sqldataadapter(sql, con)

溫馨提示

  • 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)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論