Forums
New posts
Search forums
Members
Current visitors
Log in
Register
What's new
Search
Search
Search titles only
By:
New posts
Search forums
Menu
Log in
Register
Install the app
Install
Forums
Archive
Archive
ASP .Net
ASP General
Recordsets vs. Arrays?
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
Reply to thread
Message
[QUOTE="Bob Barrows [MVP], post: 4365768"] Sure. It's pretty raw, no comments ... Public Declare Function GetTickCount& Lib "kernel32" () Dim cn As New ADODB.Connection Dim sSQL As String Private Sub Form_Load() Dim rs As New Recordset sSQL = "Select CompanyName,ContactName,City FROM Northwind..Suppliers" cn.Open "provider=sqloledb;data source=clnsqldev7;" & _ integrated security=SSP1;initial catalog=northwind" 'use disconnected recordset 'rs.CursorLocation = adUseClient 'rs.Open sSQL, cn, adOpenStatic, adLockReadOnly, 1 'Set rs.ActiveConnection = Nothing TestRSNewRS TestArNewRS cn.Close: Set cn = Nothing 'TestArray rs 'rs.MoveFirst 'TestRSloop rs 'Set rs = Nothing End Sub Sub TestArray(pRS As Recordset) Dim arData As Variant Dim i As Integer Dim loops As Long Dim ticks As Long Dim s As String ticks = GetTickCount If Not pRS.EOF Then arData = pRS.GetRows If IsArray(arData) Then For loops = 0 To 10000 For i = 0 To UBound(arData, 2) s = arData(0, i) Next Next End If txtArray.Text = GetTickCount - ticks End Sub Sub TestRSloop(pRS As Recordset) Dim loops As Long Dim ticks As Long Dim s As String Dim fld As ADODB.Field Set fld = pRS.Fields(0) ticks = GetTickCount For loops = 0 To 1000000 Do Until pRS.EOF s = fld.Value 'pRS ("CompanyName") pRS.MoveNext Loop Next txtRsLoop.Text = GetTickCount - ticks End Sub Sub TestArNewRS() Dim rs As New Recordset Dim arData As Variant Dim i As Integer Dim loops As Long Dim ticks As Long Dim s As String ticks = GetTickCount 'rs.CursorLocation = adUseClient rs.Open sSQL, cn, adOpenForwardOnly, adLockReadOnly, 1 'Set rs.ActiveConnection = Nothing If Not rs.EOF Then arData = rs.GetRows rs.Close: Set rs = Nothing If IsArray(arData) Then For loops = 0 To 100000 For i = 0 To UBound(arData, 2) s = arData(0, i) Next Next End If txtArray.Text = GetTickCount - ticks End Sub Sub TestRSNewRS() Dim rs As New Recordset Dim loops As Long Dim ticks As Long Dim s As String Dim fld As ADODB.Field ticks = GetTickCount rs.Open sSQL, cn, adOpenForwardOnly, adLockReadOnly, 1 Set fld = rs.Fields(0) For loops = 0 To 100000 Do Until rs.EOF s = rs("CompanyName") rs.MoveNext Loop Next txtRsLoop.Text = GetTickCount - ticks End Sub [/QUOTE]
Verification
Post reply
Forums
Archive
Archive
ASP .Net
ASP General
Recordsets vs. Arrays?
Top