在ASP中使用断开的记录集
2008-02-23 09:44:18来源:互联网 阅读 ()
我们在使用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 ""
%>
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:限制只能中文输入的方法
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash