Fábio Sato wrote:
>
> Joel Burton wrote:
> >
> > On Thu, 18 Oct 2001, [iso-8859-1] Fábio Sato wrote:
> >
> > > > > is very disappointing... I have a procedure that update 868 rows and it is
> > > > > taking more than 5 minutes to complete.
> > >
> > > I think that the source code may be a better answer to your questions,
> > > so this is basically what I'm doing:
> > >
> > > conn.Open "DSN=mydb;uid=username;pwd=mypassword"
> >
> > conn.Execute("begin")
> >
> > > For I = 0 To size - 1
> > > sql = "update mytable set value1 = " & array1(I) & ", value2 = " &
> > > array2(I) & _
> > > ", value3 = " & array3(I) & ... & ", value20 = " & array20(I) &
> > > -
> > > " where code = " & codes(I)
> > > conn.Execute(sql)
> > > Next I
> >
> > conn.Execute("commit")
> >
> > Does this help?
>
> No. I didn't change even the seconds... :(
>
Strange, I got much better timing on a similiar situation
with transactions... can you try this?
Dim conn As New ADODB.Connection
Dim com As New ADODB.Command
Dim i As Long
conn.Open "DSN=mydb;uid=username;pwd=mypassword"
Set com.ActiveConnection = com
conn.BeginTrans
For i = 0 To Size - 1
sql = "update mytable set value1 = " & array1(I) & ", value2 = " &
array2(I) & _
", value3 = " & array3(I) & ... & ", value20 = " & array20(I)
& _
" where code = " & codes(I)
com.CommandText = sql
com.Execute adExecuteNoRecords + adCmdText
Next i
conn.CommitTrans
Also, have you updated to the latest ADO version (I'm using ADO 2.6)?
Is all logging disabled?
Hope this helps
Best regards
Andrea Aime