“VB6记录集”;开放式;与后端相比,显示结果需要更多时间
我正在使用查询查找数据。 从后端执行相同的查询所需的时间更少,即2秒。 但在代码中,相同的查询需要更多的时间,即recordset.open中的30秒。 数据库:Sybase 谢谢 代码示例:“VB6记录集”;开放式;与后端相比,显示结果需要更多时间,vb6,recordset,Vb6,Recordset,我正在使用查询查找数据。 从后端执行相同的查询所需的时间更少,即2秒。 但在代码中,相同的查询需要更多的时间,即recordset.open中的30秒。 数据库:Sybase 谢谢 代码示例: Dim rsRoute As New ADODB.Recordset --------------------------------------------- If rsRoute.State = 1 Then rsRoute.Close Set rsRoute =
Dim rsRoute As New ADODB.Recordset
---------------------------------------------
If rsRoute.State = 1 Then rsRoute.Close
Set rsRoute = New ADODB.Recordset
Set rsRoute.ActiveConnection = con
rsRoute.CursorLocation = adUseClient
rsRoute.CursorType = adOpenKeyset
rsRoute.LockType = adLockBatchOptimistic
strCmd = " select * from Table where CoumnVal =1 "
con.Errors.Clear
On Error Resume Next
rsRoute.Open strCmd
有几种类型的游标类型和两种不同的游标位置类型。在Sybase数据库(当时的ASE)上,根据您的选择,性能差异很大。尝试客户端和服务器端游标,看看会发生什么 如果只需要循环一次结果,请选择adOpenForwardOnly光标类型。它通常会产生最佳性能
编辑:根据您发布的代码,尝试a)不锁定任何内容(例如LockType),b)使用adOpenForwardOnly光标,a)将光标保持在服务器上(AdUserServer)如果显示一些代码,您可能会得到更多帮助。如何打开与数据库的连接?如何打开记录集?让我们看一些示例代码(或者真实代码,如果可以的话)。