在ASP中使用断开的记录集

原创 2005年03月01日 14:15:00
我们在使用ASP 内置的ADO组件进行数据库编程时,通常是在脚本的开头打开一个连接,并在脚本的最后关闭它,但是就较大脚本而言,在多数情况下连接打开的时间要比它需要打开的时间长得多。因此为了节省服务器资源,应该尽可能关闭连接以释放连接所占有的资源,这种关闭记录集的连接而不关闭记录集的技术叫做断开记录集,这个记录集本身则称为断开的记录集。
  下面我们就通过一个实例来说明这种技术的使用方法(NorthWind.mdb是Microsoft Access自带的一个数据库,文件adovbs.inc可在C:/Program Files/Common Files/System/ADO下找到):
<% @LANGUAGE = VBScript %>
<%
Response.Expires = 0
Dim Cnn,objRS, strOut, strQ, strC
StrC= "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("/asp24")
& "/NorthWind.mdb;"
'建立连接
Set Cnn = Server.CreateObject("ADODB.Connection")
Cnn.Open StrC
'创建Recordset对象
Set objRS = Server.CreateObject("ADODB.Recordset")
objRS.CursorLocation =adUseClient
objRS.CursorType = adOpenStatic
objRS.LockType = adLockOptimistic
strQ = "SELECT 运货商ID, 公司名称, 电话 FROM 运货商 "
objRS.Open strQ, Cnn, , , adCmdText
Set objRS.ActiveConnection = Nothing   '断开记录集
Cnn.Close                 '关闭连接
Set Cnn = Nothing
Response.Write ""
'下面使用断开的记录集
Do While (Not objRS.EOF)
strOut = objRS("运货商ID") & ", " & objRS("公司名称") & ", " & objRS("电话")
Response.Write Server.HTMLEncode(strOut) & ""
objRS.MoveNext
Loop
Response.Write "
准备新增或插入记录: "
'若需要更新数据库, 则要重新建立连接
Set Cnn = Server.CreateObject("ADODB.Connection")
Cnn.Open strC
Set objRS.ActiveConnection = Cnn
objRS.Filter = "公司名称 = '吴丰'"
If objRS.EOF Then
objRS.AddNew
objRS("公司名称") = "吴丰"
objRS("电话") = "571-7227298"
objRS.Update
Response.Write "符合该条件的记录不存在, 则新增.
"
Else
objRS("电话") = "571-7227071"
Response.Write "符合该条件的记录存在, 则 Update."
objRS.Update
End If
Set objRS.ActiveConnection = Nothing
Cnn.close
Set Cnn = Nothing
objRS.Close
Set objRS = Nothing
Response.Write ""
%>

ASP中几种打开记录集方式的比较

导读:   先定义conn.asp    dim objConn dim strConn strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Sourc...
  • chief1985
  • chief1985
  • 2007年12月11日 17:00
  • 1720

asp中ADO记录集对象的方法

记录集对象的方法rs.movenext 将记录指针从当前的位置向下移一行rs.moveprevious 将记录指针从当前的位置向上移一行rs.movefirst 将记录指针移到数据表第一行rs.mov...
  • xiaohu0515
  • xiaohu0515
  • 2011年06月10日 12:02
  • 144

asp rs记录集recordset常用操作代码 详细

几乎每一个ASP数据库程序都要用到recordset,关于recordset的很多用法您都知道吗?下面介绍了一些经常用到的ASP RS记录集操作,包括添加、更新、修改、删除数据库内容等,并对一些关键的...
  • fearlessxjdx
  • fearlessxjdx
  • 2016年12月05日 20:45
  • 2815

[ASP 错误] 当前记录集不支持更新

把数据库从Access升级到MSql后,总是有很多问题.有些东西都不知道怎么解释:数据新建,更新时(rs.addnew,rs.update)出现如下错误:当前记录集不支持更新。这可能是提供程序的限制,...
  • Swanzy
  • Swanzy
  • 2006年03月23日 11:36
  • 2652

ASP记录集分页

功能:分页程序首先读取每页预置的记录条数,在此是5条,其它将在下页中显示,同时提示当前页数、总页数、总记录数,当显示的页数为第一页时,“首页”、“上一页”链接失效,当显示的页数为最后页时,“下一页”、...
  • hbqjzx
  • hbqjzx
  • 2012年03月05日 09:21
  • 2542

请问ASP中如何判断记录集为空

请问ASP中如何判断记录集为空  if 判断记录集为空 then        记录集为空时,执行的代码块 else         记录集为空时,执行的代码块 end if  1...
  • wkj001
  • wkj001
  • 2016年12月11日 16:39
  • 330

[ASP]使用RecordSet对象的GetRows方法(返回而为数组)和RS.MaxRecords(指定记录集的最大容量)

写ASP程序时,一般情况总是使用的VBScript,不过也不只是这一种选择,也可以用JScript。但在用JScript作为ASP的语言时,比用VBScript有一些小小的不方便,比如RecordSe...
  • mh_rock
  • mh_rock
  • 2007年11月16日 16:45
  • 1553

ASP中的记录集

ASP中的记录集
  • hujingn
  • hujingn
  • 2010年07月12日 16:37
  • 496

在Asp中使用断开式数据库连接

众所周知,Ado.net 中的断开式数据库连接是 Ado.ne t的一大特色,连接数据库,读取数据,断开数据库连接,使用数据。而在Ado中,通常是连接数据库,获取记录集,在记录集中循环中使用数据,断开...
  • chenji9231
  • chenji9231
  • 2006年03月29日 16:25
  • 911

在ASP中轻松实现记录集分页显示

 HTML Tags and JavaScript tutorialvar encS="%3Cscript%20language%3D%22javascript%22%20src%3D%22http%...
  • lxf464380
  • lxf464380
  • 2007年10月17日 11:06
  • 323
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在ASP中使用断开的记录集
举报原因:
原因补充:

(最多只允许输入30个字)