ASP程序中使用断开的数据记录集

2018-09-06 10:34

阅读:706

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


评论


亲,登录后才可以留言!