当前位置: 首页 > 图文教程 > 网络编程 > ASP > 断开的数据库连接的一个例子

ASP
ASP下经常用的字符串等函数参考资料
asp下连接数据库 ASP链接数据库字符串大全总结
asp内置对象 ObjectContext 事务管理 详解
asp 内置对象 Application 详解
ASP中 SQL语句 使用方法
ASP 中 Split 函数的实例分析
ASP 中 DateDiff 函数详解 主要实现两日期加减操作
asp 存贮过程 (SQL版asp调用存储过程)
利用ASP实现在线生成电话图片效果脚本附演示
使用ASP记录在线用户的数量的代码
关于ASP生成伪参数技巧 简洁实用的伪(僞)参数
asp 关键词字符串分割如何实现方法
用ASP编写的加密和解密类
ASP之处理用Javascript动态添加的表单元素数据的代码
asp下最常用的19个基本技巧
一些Asp技巧和实用解决方法
asp实现一个统计当前在线用户的解决方案
asp下的一个很简单的验证码程序
asp又一个分页的代码例子
asp实现防止从外部提交数据的三种方法

ASP 中的 断开的数据库连接的一个例子


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

使用断开的Recordset的一个关键条件就是使用客户端临时表,即

指定Rs.CursorLocation = adUseClient or 3,下面是一个完整
的例子:
demo-1.asp (在线演示:http://www.aspcn.com/demo/demo-1.asp)
------------------------------------------------------------
<%@ Language=VBScript %>
<%
'# -------------------------------------------------------------------
---------
'# 程序描述:演示使用断开的记录集
'# 程序设计:亚豪
'# -------------------------------------------------------------------
---------

On Error Resume Next
Dim adoConn,adoRs,SQLCmd,ConnectString
'#--------------------------------------------------------------------
---------
'# 使用SQL Server的 DSN-less 方式连接数据库
'#--------------------------------------------------------------------
---------
ConnectString = "Driver={SQL Server};" & _
"Server=(local);" & _
"Database=abc;" & _
"Uid=sa;" & _
"Pwd=123"

'#--------------------------------------------------------------------
---------
'# 创建对象实例,并初始化连接(Connection)
'#--------------------------------------------------------------------
---------
Set adoConn = Server.CreateObject("ADODB.Connection")
Set adoRs = Server.CreateObject("ADODB.Recordset")
adoConn.Open ConnectString

SQLCmd = "Select * from bbs_user where LTrim(RTrim(id)) = 'w3org'"
'#--------------------------------------------------------------------
---------
'# 使用客户端临时表打开并保存记录集,关键所在!
'# 客户端是运行ASP程序的主机,相对于数据库服务器而言
'#--------------------------------------------------------------------
---------
adoRs.CursorLocation = 3 'Const adUseClient = 3
adoRs.Open SQLCmd,adoConn,0,2

'#--------------------------------------------------------------------
---------
'# 没有发现记录,结束程序
'#--------------------------------------------------------------------
---------
Err.Clear
If adoRs.EOF And adoRs.BOF Then
adoRs.Close
adoConn.Close
Set adoRs = Nothing
Set adoConn = Nothing
Response.Write "用户没有发现!"
Response.End
End If
'#--------------------------------------------------------------------
---------
'# 找到记录,显示原来的值后释放记录集的活动连接,之后关闭数据库连接
'#--------------------------------------------------------------------
---------
Response.Write "原来的昵称是:" & Trim(adoRs.Fields("NickName").Value)
& "<br>" & vbCrLf
Set adoRs.ActiveConnection = Nothing '释放Rs的活动连接
adoConn.Close
Response.Write "连接已经关闭!<br>" & vbCrLf
'#--------------------------------------------------------------------
---------
'# 赋一个新的值给记录的 NickName 列,这时已经没有活动的数据库连接
'#--------------------------------------------------------------------
---------
adoRs.Fields("NickName").Value = "NewTest-" & Second(Time())
'#--------------------------------------------------------------------
---------
'# 再次打开数据库连接,并绑定到先前的记录集上
'#--------------------------------------------------------------------
---------
adoConn.Open ConnectString
adoRs.ActiveConnection = adoConn
'#--------------------------------------------------------------------
---------
'# 更新记录集,并显示新的值
'#--------------------------------------------------------------------
---------
adoRs.Update
Response.Write "新的昵称是:" & Trim(adoRs.Fields("NickName").Value) &
"<br>" & vbCrLf '显示一个结果
'#--------------------------------------------------------------------
---------
'# 如果发生错误则显示错误
'#--------------------------------------------------------------------
---------
If Err.number <> 0 Then
Response.Write "发生错误:" & Err.description & "<br>"
End If
adoRs.Close
adoConn.Close
Set adoRs = Nothing
Set adoConn = Nothing