详解ASP中断开记录集的使用方法

时间:2008-02-13 08:35:00 

我们在使用ASP 内置的ADO组件进行数据库编程时,通常是在脚本的开头打开一个连接,并在脚本的最后关闭它,但是就较大脚本而言,在多数情况下连接打开的时间要比它需要打开的时间长得多。因此为了节省服务器资源,应该尽可能关闭连接以释放连接所占有的资源,这种关闭记录集的连接而不关闭记录集的技术叫做断开记录集,这个记录集本身则称为断开的记录集。


下面我们就通过一个实例来说明这种技术的使用方法(NorthWind.mdb是Microsoft Access97自带的一个数据库,文件adovbs.inc可在C:\Program Files\Common Files\System\ADO下找到):



<% @LANGUAGE = VBScript %> 
<!--#include file="adovbs.inc"--> 
<% 
 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 "<HTML><BODY>" 
 '下面使用断开的记录集 
 Do While (Not objRS.EOF) 
  strOut = objRS("运货商ID") & ", " & objRS("公司名称") & ", " & objRS("电话") 
  Response.Write Server.HTMLEncode(strOut) & "<BR>" 
  objRS.MoveNext 
 Loop 
 Response.Write "<BR>准备新增或插入记录: " 
 '若需要更新数据库, 则要重新建立连接 
 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 "符合该条件的记录不存在, 则新增.<BR>" 
 Else 
  objRS("电话") = "571-7227071" 
  Response.Write "符合该条件的记录存在, 则 Update.<BR>" 
  objRS.Update 
 End If 
 Set objRS.ActiveConnection = Nothing 
 Cnn.close 
 Set Cnn = Nothing 
 objRS.Close 
 Set objRS = Nothing 
 Response.Write "</BODY></HTML>" 
%>

标签:数据库,记录,asp,sql
0
投稿

猜你喜欢

  • asp随机提取access数据库记录的几种方法

    2007-09-06 19:42:00
  • 破解 屏蔽 防框架代码 top.location != self.location

    2008-11-27 12:59:00
  • SQL Server 2005常见问题浅析

    2009-03-16 14:06:00
  • js和asp操作fso比较

    2007-09-23 09:17:00
  • 在IE浏览器下面指定表单编码方式

    2009-10-02 16:47:00
  • 注册表单之死

    2008-08-07 13:02:00
  • asp组件上传

    2010-05-27 12:16:00
  • MySQL数据库中设列的默认值为Now()的介绍

    2009-03-06 17:40:00
  • Dreamweaver快捷键大全

    2007-11-05 14:08:00
  • CSS的优先级与特殊性

    2008-06-24 11:36:00
  • 解读HTML:大厦的基石

    2008-12-01 12:57:00
  • Oracle常用dump命令,记录一下备查。

    2009-03-04 10:27:00
  • Oracle平台应用数据库系统的设计与开发

    2010-07-21 13:03:00
  • SQL指令植入式攻击的危害及其防范措施

    2008-12-19 14:07:00
  • ASP 精华源码收集(五年总结)第1/20页

    2011-04-07 11:15:00
  • 如何将数据访问页绑定到断开连接的 ADO 记录集上?

    2009-12-03 20:07:00
  • 我跟iframe之间的误会

    2008-03-17 13:30:00
  • oracle 触发器 学习笔记

    2009-05-24 19:57:00
  • ASP中使用Session变量的优缺点

    2007-10-01 18:02:00
  • gchart:基于google图表API的jquery组件全攻略:1、入门

    2010-01-25 12:18:00
  • asp之家 网络编程 m.aspxhome.com