标题: ADO的Recordset对象和Command对象 [打印本页] 作者: 你是坏蛋 时间: 2012-12-8 20:53 标题: ADO的Recordset对象和Command对象 这几天在看ADO,发现ADO还有个Command对象,貌似没用过,所以狠狠的试了一下,
结果。。。。。。。。让我问个比较白痴的问题:
用ADO新增记录,按理说,如果Command对象不需要建立记录集,应该不比较不占内存,操作速度比较快才对。
可是我试一下,用Recordset的Addnew方法结果比较前者快2倍。
内存使用情况就不知道了,这样看,还是Recordset对象的Addnew方法好?
搞不清楚,为什么?也许我就是瞎折腾。
如下两段代码。
Private Sub Command4_Click()
Dim rs As ADODB.Recordset
Dim sqlstr As String
Dim i As Integer
Dim t As Double
sqlstr = "select * from 订单"
Set rs = New ADODB.Recordset
rs.Open sqlstr, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
t = Timer
With rs
For i = 1 To 10000
.AddNew
.Fields("订单号") = Me.订单号
.Fields("客户名称") = Me.客户名称
.Update
Next i
End With
t = Timer - t
MsgBox t
rs.Close
Set rs = Nothing
End Sub
第二段
Private Sub Command5_Click()
Dim rsm As New ADODB.Command
Dim sqlstr As String
Dim i As Integer
Dim t As Double
sqlstr = "insert into 订单 values(" & Me.订单号 & "," & Me.客户名称 & ")"
t = Timer
rsm.ActiveConnection = CurrentProject.Connection
rsm.CommandText = sqlstr
rsm.CommandType = adCmdText
For i = 1 To 10000
rsm.Execute , , adExecuteNoRecords
Next i