[摘要] 介紹了ASP的特點(diǎn)和編程中的對(duì)象,論述了ASP訪問(wèn)數(shù)據(jù)庫(kù)的步驟。
[關(guān)鍵詞] ASP 數(shù)據(jù)庫(kù)
一、ASP概述
ASP 是微軟公司開(kāi)發(fā)的代替CG1腳本程序的一種應(yīng)用,它可以與數(shù)據(jù)庫(kù)和其他程序進(jìn)行交互,是一種簡(jiǎn)單、方便的編程工具。ASP即不是程序語(yǔ)言,又不是開(kāi)發(fā)工具,而是一種技術(shù)框架。通過(guò)ASP可以結(jié)合HTML網(wǎng)頁(yè)、ASP指令和ActiveX控件建立動(dòng)態(tài)的、交互的、高效的Web服務(wù)器應(yīng)用程序。ASP是一種服務(wù)器端腳本編寫(xiě)環(huán)境,可以用來(lái)創(chuàng)建和運(yùn)行動(dòng)態(tài)網(wǎng)頁(yè)或web應(yīng)用程序。
二、ASP簡(jiǎn)介
1.ASP的主要特點(diǎn)
(1)ASP面向?qū)ο缶幊?,可便捷的使用ActiveX組件來(lái)執(zhí)行復(fù)雜的任務(wù)。
(2)無(wú)需編譯,Web服務(wù)器直接執(zhí)行腳本代碼。
(3)使用普通的文本編輯器(如windows的記事本)就可以進(jìn)行編輯設(shè)計(jì),也可以使用高效的可視化工具VisualInterDev.
(4)獨(dú)立于瀏覽器,用戶端的瀏覽器只要能執(zhí)行HTML代碼即可。ASP使用的腳本語(yǔ)言在Web服務(wù)器端執(zhí)行,用戶端瀏覽器不需要能執(zhí)行這些腳本語(yǔ)言。
(5)ASP的源程序隱藏,不會(huì)被傳到用戶瀏覽器,用戶僅能看見(jiàn)由ASP輸出的動(dòng)態(tài)HTML文件,這提高了程序的安全性。
(6) 使用VBScript,javascript等簡(jiǎn)單易懂的腳本語(yǔ)言,腳本語(yǔ)言完全嵌入HTML不僅可快速的完成網(wǎng)站的應(yīng)用程序,還實(shí)現(xiàn)了程序與頁(yè)面的完美結(jié)合。
(7)可使用服務(wù)器端的腳本產(chǎn)生客戶端的腳本。
(8)實(shí)現(xiàn)復(fù)雜數(shù)據(jù)庫(kù)操作.ASP完全擺脫了CGI和ISPAI技術(shù)的局限,通過(guò)ADO實(shí)現(xiàn)對(duì)后臺(tái)數(shù)據(jù)庫(kù)的復(fù)雜操作,同時(shí)可生成交互性很強(qiáng)的頁(yè)面。
2.ASP程序結(jié)構(gòu)
ASP的程序代碼簡(jiǎn)單、通用,文件名由.a(chǎn)sp或.htm結(jié)尾,ASP文件通常由四部分構(gòu)成:
(1)標(biāo)準(zhǔn)的HTML標(biāo)記:所有的HTML標(biāo)記均可使用。
(2)ASP語(yǔ)法命令:位于<% %> 標(biāo)簽內(nèi)的ASP代碼。
(3)服務(wù)器端的include語(yǔ)句:可用 #include語(yǔ)句調(diào)入其他ASP代碼, 增強(qiáng)了編程的靈活性。
(4)腳本語(yǔ)言:ASP自帶JScript和VBScript兩種腳本語(yǔ)言,增加了ASP的編程功能,用戶也可安裝其他腳本語(yǔ)言,如 Perl、Rexx等。
3.ASP的內(nèi)建對(duì)象
ASP提供了六個(gè)內(nèi)建對(duì)象,這些對(duì)象是由運(yùn)行環(huán)境自動(dòng)產(chǎn)生的而不需要用戶自己去創(chuàng)建,用戶可直接調(diào)用這些對(duì)象的屬性和方法。
(1)Response對(duì)象:該對(duì)象主要是從服務(wù)器向用戶端發(fā)送數(shù)據(jù)。包括Buffer和Expires兩種屬性,方法有write、redirect、end、clear4種。
(2)Request對(duì)象:從用戶端取得信息傳遞給服務(wù)器,是ASP讀取用戶輸入的主要方法。
(3)Application對(duì)象:負(fù)責(zé)管理所有會(huì)話信息,可用來(lái)在指定的應(yīng)用程序的所有用戶之間共享信息。
(4)Server對(duì)象:提供對(duì)服務(wù)器有關(guān)方法和屬性的訪問(wèn)。
(5)Session對(duì)象:存貯特定用戶的會(huì)話信息,只被該用戶訪問(wèn),當(dāng)用戶在不同WEB頁(yè)面跳轉(zhuǎn)時(shí),Session中的變量在用戶整個(gè)會(huì)話過(guò)程中一直保存。Session對(duì)象需cookie支持。
(6)ObjectContext對(duì)象:IIS4.0新增的對(duì)象,用來(lái)進(jìn)行事務(wù)處理。此項(xiàng)功能需得到osoftTranscationServer)管理的支持。
三、ASP訪問(wèn)WEB數(shù)據(jù)庫(kù)的步驟
1.配置數(shù)據(jù)庫(kù)文件 DSN
在“創(chuàng)建新數(shù)據(jù)源”對(duì)話框中,從列表框中選擇數(shù)據(jù)庫(kù)名稱例如“sql Server”,然后單擊“下一步”。鍵入 DSN 文件的名稱,然后單擊“下一步”。單擊“完成”創(chuàng)建數(shù)據(jù)源。鍵入運(yùn)行 sql 服務(wù)程序的服務(wù)器的名稱、登錄 ID 和密碼。
2.連接數(shù)據(jù)庫(kù)
訪問(wèn)數(shù)據(jù)庫(kù)信息的第一步是和數(shù)據(jù)庫(kù)源建立連接。ADO提供 Connection對(duì)象,可以使用該對(duì)象建立和管理應(yīng)用程序和ODBC 數(shù)據(jù)庫(kù)之間的連接。
3.檢索記錄
檢索數(shù)據(jù)、檢查結(jié)果、更改數(shù)據(jù)庫(kù),ADO提供了Recordset對(duì)象。Recordset 對(duì)象有許多可以使用的特性,根據(jù)查詢限制,檢索并且顯示一組數(shù)據(jù)庫(kù)行,即記錄。Recordset對(duì)象保持查詢返回的記錄的位置,允許一次一項(xiàng)逐步掃描結(jié)果。根據(jù) Recordset對(duì)象的指針類型屬性設(shè)置,可以滾動(dòng)和更新記錄。數(shù)據(jù)庫(kù)指針可以讓您在一組記錄中定位到特定的項(xiàng)。
4.用Command對(duì)象改善查詢
通過(guò)ADO Command對(duì)象,可以在數(shù)據(jù)庫(kù)源上準(zhǔn)備、編譯您的查詢并且反復(fù)使用一組不同的值來(lái)發(fā)出查詢。這種方式的編譯查詢的優(yōu)點(diǎn)是您可以最大程度地減少向現(xiàn)有查詢重復(fù)發(fā)出修改的請(qǐng)求所需的時(shí)間。Command對(duì)象的parameter集合減少了麻煩,不必在每次重新發(fā)出查詢時(shí)重新建立查詢。用Command對(duì)象編譯查詢也可避免 sql 查詢引起的合并字符串和表格變量問(wèn)題。
5.結(jié)合HTML表格和數(shù)據(jù)庫(kù)訪問(wèn)
包含HTML表格的web頁(yè)可使用戶遠(yuǎn)程查詢數(shù)據(jù)庫(kù)并且檢索特定的信息。使用asp Request對(duì)象,可以檢索輸入到HTML表格的信息并將這些信息合并到sql語(yǔ)句中。
6.關(guān)閉連接
使用Connection對(duì)象的Close方法終止Connection對(duì)象和數(shù)據(jù)庫(kù)之間的連接。
四、結(jié)束語(yǔ)
數(shù)據(jù)庫(kù)的應(yīng)用范圍相當(dāng)廣泛,ASP作為一門(mén)新興的網(wǎng)絡(luò)技術(shù)在數(shù)據(jù)庫(kù)領(lǐng)域有著相當(dāng)廣闊的發(fā)展前途。在ASP中訪問(wèn)WEB數(shù)據(jù)庫(kù)的關(guān)鍵是建立與數(shù)據(jù)庫(kù)的連接,只有建立了連接,才能實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)的增加、刪除、修改,更新及查詢操作。
參考文獻(xiàn):
[1]李曉黎張巍編著:ASP+SQL Server網(wǎng)絡(luò)應(yīng)用系統(tǒng)開(kāi)發(fā)與實(shí)例[M].北京:人民郵電出版社,2004
[2]曹建主編:ASP 實(shí)例教程[M].北京:電子工業(yè)出版社,2000
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請(qǐng)以PDF格式閱讀原文。