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

下載本文檔

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

文檔簡(jiǎn)介

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

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

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

6、54.1.2數(shù)據(jù)庫(kù)與網(wǎng)頁(yè)連接方法分析 . 194.2系統(tǒng)登陸功能 . 204.2.1系統(tǒng)登陸功能的主要代碼及其實(shí)現(xiàn) . 20第五章總結(jié) . 23參考文獻(xiàn) . 24致謝 . 25基于數(shù)據(jù)庫(kù) ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用內(nèi)容目錄第 4 頁(yè)圖 目 錄圖 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ù)庫(kù)關(guān)系圖 . 18圖 4-2 系統(tǒng)登陸界面 . 20基于數(shù)據(jù)庫(kù) ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用內(nèi)容目錄第 5 頁(yè)表 目 錄表 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ù)庫(kù) ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用前言第 6 頁(yè)第一章前言1.1論文背景介紹在 internet飛速發(fā)展的今天,互聯(lián)網(wǎng)成為人們快速獲取、發(fā)布和傳遞信息的重要渠道,它在人們政治、經(jīng)濟(jì)、學(xué)習(xí)、生活等各個(gè)方面發(fā)揮著重要的作用。因特網(wǎng)技術(shù)與印刷出版、飛機(jī)、個(gè)人電腦并列,作為歷史上最具革命性的技術(shù)之一。在沉寂了20 多年后,因特網(wǎng)走出不為人所知的角落,引起來(lái)了全世界所有人的關(guān)注和想象。眾所周知, internet上發(fā)布信息主要是通過(guò)網(wǎng)站來(lái)實(shí)現(xiàn)的,獲取信息也是要在internet“

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

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

10、式結(jié)束, 如今 sybase 公司致力于開發(fā)基于unix下的數(shù)據(jù)庫(kù)系統(tǒng),而microsoft公司繼續(xù)開發(fā)基于 windows nt和 sql server 系列數(shù)據(jù)庫(kù)系統(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ā)展歷程中,有三個(gè)具有里程碑的版本:sql server6.5 、sql server7.0以及 sql server2000 ,下面我們重點(diǎn)介紹一下sql server2000

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

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

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

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

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

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

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

18、在一起,所以從程序的執(zhí)行速度和程序的可移植性上都存在一些問(wèn)題,由于這樣的原因,微軟推出了asp.net 。asp.net結(jié)構(gòu)是一個(gè)三層系統(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ù)庫(kù) ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用開發(fā)工具以及語(yǔ)言環(huán)境的選擇第 11 頁(yè)由于 asp頁(yè)面每次打開都必須經(jīng)過(guò)先編譯后解釋的過(guò)程,所以頁(yè)面在反復(fù)打開時(shí)速度沒有任何提升,而asp.net 頁(yè)面只需要一次編譯后不需要重

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

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

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

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

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

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

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

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

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

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

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

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

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

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

33、ql, con) ds = new dataset() 首先聲明一個(gè)字符串sql 即為要執(zhí)行的 sql語(yǔ)句。然后由對(duì)象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 對(duì)數(shù)據(jù)集data 進(jìn)行操作,并驗(yàn)證用戶名和密碼是否匹配,如果匹配則進(jìn)入mcontrol.aspx界面,不匹配則顯示password error!或 the user doesnt exist! 總的說(shuō)來(lái), ado.net 訪問(wèn)數(shù)據(jù)庫(kù),一般要通過(guò)以下四個(gè)步驟:1、 創(chuàng)建一個(gè)到數(shù)據(jù)庫(kù)的鏈路,即ado.connection;2、 查詢一個(gè)數(shù)據(jù)集合,即執(zhí)行sql ,產(chǎn)生一個(gè) recordset ;3、 對(duì)數(shù)據(jù)集合進(jìn)行需要的操作;4、 關(guān)閉數(shù)據(jù)鏈路。基于數(shù)據(jù)庫(kù) ,asp.n

35、et 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用數(shù)據(jù)庫(kù)設(shè)計(jì)和登陸功能的實(shí)現(xiàn)第 20 頁(yè)4.2系統(tǒng)登陸功能4.2.1系統(tǒng)登陸功能的主要代碼及其實(shí)現(xiàn)系統(tǒng)登陸界面由兩個(gè)文本輸入框textbox 和一個(gè)下拉列表框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ù)庫(kù)密碼 ; database=數(shù)據(jù)庫(kù)名稱管理員登陸模塊:if id = 管理員 then 基于數(shù)據(jù)庫(kù) ,asp.net 上的網(wǎng)上輔助教學(xué)系統(tǒng)的開發(fā)與應(yīng)用數(shù)據(jù)庫(kù)設(shè)計(jì)和登陸功能的實(shí)現(xiàn)第 21 頁(yè) 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. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論