当前位置: 首页 > 图文教程 > 网络编程 > ASP > 在ASP中使用断开的记录集

ASP
BytesToBstr获取的源码转换为中文的代码
PostHttpPage用asp是实现模拟登录效果的代码
asp下实现UrlEncoding转换编码的代码
GetBody asp实现截取字符串的代码
asp之GetArray提取链接地址,以$Array$分隔的代码
DefiniteUrl asp将相对地址转换为绝对地址的代码
ReplaceSaveRemoteFile 替换、保存远程图片 的代码
ReSaveRemoteFile函数之asp实现查找文件保存替换的代码
FormatRemoteUrl函数之asp实现格式化成当前网站完整的URL-将相对地址转换为绝对地址的代码
ReplaceTrim 函数之asp实现过滤掉字符中所有的tab和回车和换行的代码
CheckFile函数之asp实现检查某一文件是否存在的代码
SaveRemoteFile函数之asp实现保存远程的文件到本地的代码
FpHtmlEnCode 函数之标题过滤特殊符号的代码
GetPaing 函数之asp采集函数中用到的获取分页的代码
ScriptHtml 函数之过滤html标记的asp代码
asp实现检查目录是否存在与建立目录的函数
ShowPage 显示“上一页 下一页”等信息的封装代码
JoinChar 向地址中加入 ? 或 & 用于实现传参
CreateKeyWord asp实现的由给定的字符串生成关键字的代码
Server.Execute方法执行指定的ASP程序

在ASP中使用断开的记录集


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 161 ::
收藏到网摘: n/a

       我们在使用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>"
  
  %>