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