第一种连接和记录集分开声明

<%

 db="db/darden.mdb"

 set conn=server.createobject("ADODB.connection")     

 connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("" & db & "")

 conn.open connstr

%>

<%  

set rs=server.createobject("adodb.recordset")

sql="select * from ebook order by id desc"

rs.open sql,conn,3,3

rs.addnew  

......

......

rs.update (rs.delete)

rs.close

set rs=nothing

conn.close

set conn=nothing

response.write("<center><a href=viewdatabase.asp>显示文字</a></center>") 

Response.Redirect "homepage.asp"

%>  

第二种连接和记录集一同声明

<%  

set rs=server.createobject("adodb.recordset")

sql="select * from ebook order by id desc"

conn = "DBQ=" + server.mappath("book.mdb") + ";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"

rs.open sql,conn,3,3

rs.addnew  

......

......

rs.update (rs.delete)

rs.close

set rs=nothing

response.write("<center><a href=viewdatabase.asp>显示文字</a></center>") 

%> 

ASP数据库简单*作教程

<1>.数据库连接(用来单独编制连接文件conn.asp)

<%

Set conn = Server.CreateObject(ADODB.Connection)

conn.Open DRIVER={Microsoft Access Driver (*.mdb)}; DBQ= & Server.MapPath(\bbs\db1\user.mdb) 

%>

(用来连接bbs\db1\目录下的user.mdb数据库)

<2>显示数据库记录

原理:将数据库中的记录一一显示到客户端浏览器,依次读出数据库中的每一条记录

如果是从头到尾:用循环并判断指针是否到末 使用: not rs.eof

如果是从尾到头:用循环并判断指针是否到开始 使用:not rs.bof<!--#include file=conn.asp--> (包含conn.asp用来打开bbs\db1\目录下的user.mdb数据库)

<%

set rs=server.CreateObject(adodb.recordset) (建立recordset对象)

sqlstr=select * from message ---->(message为数据库中的一个数据表,即你要显示的数据所存放的数据表)

rs.open sqlstr,conn,1,3 ---->(表示打开数据库的方式)

rs.movefirst ---->(将指针移到第一条记录)

while not rs.eof ---->(判断指针是否到末尾)

response.write(rs(name)) ---->(显示数据表message中的name字段)

rs.movenext ---->(将指针移动到下一条记录)

wend ---->(循环结束)

------------------------------------------------------ 

rs.close

conn.close 这几句是用来关闭数据库

set rs=nothing

set conn=nothing

-------------------------------------------------------

%>

其中response对象是服务器向客户端浏览器发送的信息

<3>增加数据库记录

增加数据库记录用到rs.addnew,rs.update两个函数

<!--#include file=conn.asp--> (包含conn.asp用来打开bbs\db1\目录下的user.mdb数据库)

<%

set rs=server.CreateObject(adodb.recordset) (建立recordset对象)

sqlstr=select * from message ---->(message为数据库中的一个数据表,即你要显示的数据所存放的数据表)

rs.open sqlstr,conn,1,3 ---->(表示打开数据库的方式)

rs.addnew 新增加一条记录

rs(name)=xx 将xx的值传给name字段

rs.update 刷新数据库 

------------------------------------------------------ 

rs.close

conn.close 这几句是用来关闭数据库

set rs=nothing

set conn=nothing

------------------------------------------------------- %>

<4>删除一条记录

删除数据库记录主要用到rs.delete,rs.update

<!--#include file=conn.asp--> (包含conn.asp用来打开bbs\db1\目录下的user.mdb数据库)

<%

dim name

name=xx

set rs=server.CreateObject(adodb.recordset) (建立recordset对象)

sqlstr=select * from message ---->(message为数据库中的一个数据表,即你要显示的数据所存放的数据表)

rs.open sqlstr,conn,1,3 ---->(表示打开数据库的方式)

------------------------------------------------------- 

while not rs.eof

if rs.(name)=name then

rs.delete

rs.update 查询数据表中的name字段的值是否等于变量name的值xx,如果符合就执行删除,

else 否则继续查询,直到指针到末尾为止

rs.movenext

emd if

wend

------------------------------------------------------

------------------------------------------------------ 

rs.close

conn.close 这几句是用来关闭数据库

set rs=nothing

set conn=nothing

------------------------------------------------------- 

%>

<5>关于数据库的查询

(a) 查询字段为字符型

<%

dim user,pass,qq,mail,message

user=request.Form(user)

pass=request.Form(pass)

qq=request.Form(qq)

mail=request.Form(mail)

message=request.Form(message)

if trim(user)&x=x or trim(pass)&x=x then (检测user值和pass值是否为空,可以检测到空格)

response.write(注册信息不能为空)

else

set rs=server.CreateObject(adodb.recordset)

sqlstr=select * from user where user='&user&' (查询user数据表中的user字段其中user字段为字符型)

rs.open sqlstr,conn,1,3

if rs.eof then

rs.addnew

rs(user)=user

rs(pass)=pass

rs(qq)=qq

rs(mail)=mail

rs(message)=message

rs.update

rs.close

conn.close

set rs=nothing

set conn=nothing

response.write(注册成功)

end if 

rs.close

conn.close

set rs=nothing

set conn=nothing

response.write(注册重名)

%>

(b)查询字段为数字型

<%

dim num

num=request.Form(num)

set rs=server.CreateObject(adodb.recordset)

sqlstr=select * from message where id=&num (查询message数据表中id字段的值是否与num相等,其中id为数字型)

rs.open sqlstr,conn,1,3

if not rs.eof then

rs.delete

rs.update

rs.close

conn.close

set rs=nothing

set conn=nothing

response.write(删除成功)

end if

rs.close

conn.close

set rs=nothing

set conn=nothing

response.write(删除失败)

%>