摘 要:ASP(Active Server Page)是目前公認(rèn)的建立Windows NT下動態(tài)站點(diǎn)最好的工具之一。ASP內(nèi)置組件中一個非常重要的組件是ADO(Active Data Object)組件,ADO是一種新型的數(shù)據(jù)訪問模型,提供了強(qiáng)大的數(shù)據(jù)庫訪問功能。ASP技術(shù)與ADO技術(shù)相結(jié)合,可以實(shí)現(xiàn)基于Web數(shù)據(jù)庫管理功能。
關(guān)鍵詞:ASP技術(shù) ADO技術(shù) 數(shù)據(jù)庫管理
中圖分類號:TP311.52文獻(xiàn)標(biāo)識碼:A文章編號:1674-098X(2012)04(a)-0208-01
ASP是Microsoft開發(fā)的一種服務(wù)器端執(zhí)行腳本環(huán)境,是目前公認(rèn)的建立Windows NT下動態(tài)站點(diǎn)最好的工具之一。ASP內(nèi)置組件中一個非常重要的組件是ADO組件,ADO的主要作用是提供用戶訪問數(shù)據(jù)存儲的功能,是一種可以提供Web頁面與數(shù)據(jù)庫結(jié)合的最新的數(shù)據(jù)庫技術(shù),使得數(shù)據(jù)庫存取更新更加簡單、方便。
ASP技術(shù)與ADO技術(shù)相結(jié)合,可以實(shí)現(xiàn)基于WWW的數(shù)據(jù)庫管理功能,在ASP腳本語言中直接使用ADO組件可編寫出緊湊簡明的腳本,以實(shí)現(xiàn)與ODBC數(shù)據(jù)源的連接,因此使用ADO組件可以訪問任何與ODBC兼容的數(shù)據(jù)源。ADO主要提供了Connection、Recordset、Command、Field、Parameter、Error、Property七個對象及Fields、Properties、Parameters、Errors四個集合來完成對于數(shù)據(jù)庫的管理。
在ADO組件中,Connection、Recordset和Command是三個主要的對象,通過這三個對象及它們的子對象可以方便地實(shí)現(xiàn)與數(shù)據(jù)源的連接、執(zhí)行SQL查詢和進(jìn)行查詢結(jié)果的處理。
(1)Connection對象:用來和數(shù)據(jù)庫建立連接。
(2)Command對象:用來對數(shù)據(jù)庫傳遞SQL語句,并對數(shù)據(jù)庫進(jìn)行各種操作。
(3)Recordset對象:包含了從數(shù)據(jù)源得到的記錄集。
下面介紹開發(fā)訪問數(shù)據(jù)庫并增加用戶成員程序的基本設(shè)計方法:
(1)創(chuàng)建數(shù)據(jù)庫源名(DSN)
DSN是通過ODBC創(chuàng)建,由ODBC使用和識別的、用以連接應(yīng)用程序和后臺數(shù)據(jù)庫的數(shù)據(jù)庫邏輯名。假定已為一個SQL Server數(shù)據(jù)庫創(chuàng)建了取名為“bookstore”的 ODBC數(shù)據(jù)源。
(2)創(chuàng)建數(shù)據(jù)庫鏈接(Connection)
通過服務(wù)器對象的CreateObject方法,可以創(chuàng)建Connection對象和使用變量接受對象引
用。一旦連接對象創(chuàng)建之后,它就可用來打開到任何ODBC數(shù)據(jù)源的連接。如下∶
Dim conn‘申明變量
Set Conn=Server.CreatObject(\"ADODB.Connection\")‘創(chuàng)建鏈接對象
Conn.Open \"dsn=bookstore;uid=;pwd=;\"‘打開到ODBC的鏈接,其中用戶ID號與用戶口令未加設(shè)置。程序員應(yīng)根據(jù)自己的情況進(jìn)行設(shè)置。
(3)創(chuàng)建記錄集對象(Recordset)
創(chuàng)建Recordset數(shù)據(jù)對象,實(shí)現(xiàn)對數(shù)據(jù)集合的直接存儲。
Dim Rs‘申明變量
Set Rs=Server.CreatObject(\"ADODB.Recordset\")‘創(chuàng)建數(shù)據(jù)對象
(4)操作數(shù)據(jù)庫
ADO通過執(zhí)行標(biāo)準(zhǔn)的SQL語句實(shí)現(xiàn)增加成員功能,因此首先要定義SQL語句,
然后執(zhí)行該SQL命令。
Dim sqlstr ‘申明變量
sqlstr=\"insert into user(username,address,postcode,telephone)values(‘\" varname \" ‘ ,’ \" varaddress \" ‘ ,’ \" varpostcode \" ‘ ,’ \" vartelephone \"’)\" ‘定義SQL增加成員語句,把對應(yīng)變量的值賦值給USER表中的各字段。
(5)關(guān)閉數(shù)據(jù)庫對象和鏈接對象
在程序結(jié)束前一定要關(guān)閉ADO對象,釋放服務(wù)器資源。如下:
Rs.close
Conn.close
Set Rs=nothing
Set Conn=nothing
下面是一個向bookstore數(shù)據(jù)庫中user表中增加成員程序:。
Insert_item.asp
<%
Dim Conn
Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"dsn=bookstore;uid=;pws=;\"
Sql= \"select * from user \"
Dim Rs
Set Rs=Server.CreateObject(\"ADODB.recordset\")
Const adOpenkeyset=1
Rs.Open Sql,Conn, adOpenkeyset
Dim sqlstr,varname,varaddress,varpostcode,vartelephone
Varname=request.form(“myname”)
Varaddress=request.form(“myaddress”)
Varpostcode=request.form(“mypostcode”)
Vartelephone=request.form(“mytelephone”)
sqlstr=\"insert into user(username,address,postcode,telephone) values(‘\" varname \" ‘ ,’ \" varaddress \" ‘ ,’ \" varpostcode \" ‘ ,’ \" vartelephone \"’)\" ‘定義SQL增加成員語句,把對應(yīng)變量的值賦值給USER表中的各字段。
Conn.execute(strsql)
Response.write “,
Response.write “
%>
可利用ASP技術(shù)可以很方便的開發(fā)各種網(wǎng)上數(shù)據(jù)庫的管理程序,實(shí)踐證明該方法簡單、實(shí)用、高效,是很值得學(xué)習(xí)的一種方法。