假设数据库文件名叫data.mdb
里面有2个表:
1.admin
2.news
假设admin是保存用户名和密码,里面有字段:UserName,PassWord.
假设我们要在判断一个用户名叫name,密码是pass的人是否合法,也就是数据库里面是否有这个记录,那么要进行以下几步:
1.建立一个连接对象,连接到数据库;
2.建立一个记录对象;
3.用记录对象通过sql语句对表中的内容进行操作;
4.读取sql语句的结果并处理;
5.关闭记录对象,关闭连接对象.

第一步代码:

Dim Conn,DateBase,connstr

     DateBase = "/data/data.mdb"
     ConnStr = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source = " & Server.MapPath(DateBase)

     On Error Resume Next
     Set Conn = Server.CreateObject("ADODB.Connection")
     Conn.Open Connstr '打开数据库

     If Err Then
         Err.Clear
         Set Conn = Nothing
         Response.Write "数据库连接出错,请打开conn.asp文件检查连接字串。"
         Response.End
     End If

第二步代码:

Dim Rs
Set Rs=Server.CreateObject("ADODB.RecordSet")                 '建立一个记录对象

第三步代码:

Dim Sql,UserName,PassWord
UserName="name"                                                 '给变量赋值
PassWord="pass"
Sql="select * from Admin Where Name='" & UserName &"' and PassWord='" & PassWord &"'"
Rs.open Sql,Conn,3,3

当第三步完成后,对数据库的查询就成功了,然后就可以读取sql的结果了:

A.查询记录:

If Rs.eof then 
   response.write "不存在此记录或者输入错误"     '如果到了表的末尾都没发现,当然就不存在此用户,或者用户名不对
else
   response.write "存在,用户名和密码正确"  
end if

B.添加记录:(比如添加一个名叫pig密码是dog的记录)
1.进行第一步
2.进行第二步
3.连接到表

Sql="select * from Admin"
Rs.open Sql,Conn,3,3

4.添加:

Rs.AddNew
Rs("UserName")="pig"
Rs("PassWord")="dog"
Rs.Update

C.修改记录:(比如把名pig的密码修改成cat)
1.进行第一步
2.进行第二步
3.连接到表中名UserName为pig的记录:

UsersName="pig"
Sql="select * from Admin where UserName='" & UserName & "'"
Rs.open Sql,Conn,3,3

4.添加:

Rs("PassWord")="cat"
Rs.Update

D.删除记录:(比如删除用户名为pig的记录)
1.进行第一步
2.进行第二步
3.删除表中名UserName为pig的记录:

UsersName="pig"
Sql="delete * from Admin where UserName='" & UserName & "'"
Rs.open Sql,Conn,3,3

Rs.open Sql,Conn,3,3也可以直接写成:Conn.execute(Sql)

总结:
重点在给Sql赋值这一句,他决定你进行什么操作,相关内容详情请参考介绍sql语句的书籍,姜波有.
相关结果: 说明

Rs.RecordCount           '查询到的记录个数
Rs.AddNew               '添加新记录
Rs.Update               '更新,用于修改和添加以后
Rs.MoveNext             '移动到下一条记录 
Rs.MoveLast             '移动到上一条记录

Rs.open Sql,Conn,1,3   是什么意思
我们把 1,3 用A ,B来表示
Rs.open Sql,Conn,A,B 

A: 
ADOPENFORWARDONLY(=0)     只读,且当前数据记录只能向下移动
ADOPENKEYSET(=1)         只读,当前数据记录可自由移动
ADOPENDYNAMIC(=2)         可读写,当前数据记录可自由移动
ADOPENSTATIC(=3)         可读写,当前数据记录可自由移动,可看到新增记录

B: 
ADLOCKREADONLY(=1)         缺省锁定类型,记录集是只读的,不能修改记录
ADLOCKPESSIMISTIC(=2)     悲观锁定,当修改记录时,数据提供者将尝试锁定记录以确保成功地编辑记录。只要编辑一开始,则立即锁住记录。
ADLOCKOPTIMISTIC(=3)     乐观锁定 ,直到用Update方法提交更新记录时才锁定记录。
ADLOCKBATCHOPTIMISTIC(=4) 批量乐观锁定,允许修改多个记录,只有调用UpdateBatch方法后才锁定记录。

当不需要改动任何记录时,应该使用只读的记录集,这样提供者不用做任何检测。
对于一般的使用,乐观的锁定可能是最好的选择,因为记录只被锁定一小段时间,
数据在这段时间被更新。这减少了资源的使用。


最后别忘记关闭:
Rs.Close
Set Rs=nothing
Conn.close
Set Conn=nothing

随机文章

百度对道招网的收录依旧神速啊
百度对道招网的收录依旧神速啊

旧金山示威者砸坏谷歌公交车的玻璃
旧金山示威者砸坏谷歌公交车的玻璃

Java基础第四讲:Java基本语法(三)
Java基础第四讲:Java基本语法(三)

事实证明百度收录道招网内容神速
事实证明百度收录道招网内容神速

百度“道招”这个关键字现在终于第一页
百度“道招”这个关键字现在终于第一页

将excel里面的数据导入mysql
将excel里面的数据导入mysql

相关文章

邮件搬家:转移旧邮箱邮件至新邮箱
邮件搬家:转移旧邮箱邮件至新邮箱

wordpress的tag优化插件simple tags
wordpress的tag优化插件simple tags

浅析AngularJS中的$interpolate
浅析AngularJS中的$interpolate

企业邮箱用户名太短的悲哀
企业邮箱用户名太短的悲哀

内容分享:道招
本文链接:asp连接access数据库,添加,删除等操作
道招声明:除特别标注或作者不详外,本站所有文章均为原创,转载请注明。欢迎共同关注互联网!