八、是否应该使用本地记录集?
ADO允许使用本地(客户端)记录集,此时查询将提取记录集内的所有数据,查询完成后连接可以立即关闭,以后使用本地的游标访问数据,这为释放连接带来了方便。使用本地记录集对于访问那些要求数据离线使用的远程数据服务非常重要,那么,对于普通的应用它是否同样有所帮助?
下面我们加入CursorLocation属性,并在打开记录集之后关闭了连接(CLIENT1.ASP):
Set objRS = Server.CreateObject("ADODB.Recordset")
objRS.CursorLocation = 2 ' adUseClient
objRS.ActiveConnection = Application("Conn")
objRS.LockType = 1 ' adLockReadOnly
objRS.Open Application("SQL")
objRS.ActiveConnection = Nothing
理论上,这种方法由于以下两个原因会对效率有所好处:第一,它避免了在记录之间移动时重复地通过连接请求数据;第二,由于能够方便地释放连接,它减轻了资源需求。然而,从上表看起来使用本地记录集对提高效率显然没有什么帮助。这或许是因为使用本地记录集时,不管程序设置的是什么,游标总是变成静态类型。
第6个规则如下:
除非确实要求记录集本地化,否则应避免使用