Re: ODBC Performance - Mailing list pgsql-odbc

From Fábio Sato
Subject Re: ODBC Performance
Date
Msg-id 3BCF2134.BE779A74@simepar.br
Whole thread Raw
In response to Re: ODBC Performance  (Joel Burton <joel@joelburton.com>)
Responses Re: ODBC Performance  (Joel Burton <joel@joelburton.com>)
List pgsql-odbc
> > I'm using the ODBC Driver version 07_01_0007 with ADO and the performance
> > is very disappointing... I have a procedure that update 868 rows and it is
> > taking more than 5 minutes to complete.
> >
> > After some search on the mailing lists I've found similar problems but
> > didn't find any answer to them. Can someone help me?
>
> Are you committing after each operation, or is the ODBC driver forcing
> this?
>
> By "procedure", do you mean as PG-backend proc (in plpgsql or something
> like that), or do you mean client-side procedure that calls PG 868 times?
>
> --
>
> Joel BURTON  |  joel@joelburton.com  |  joelburton.com  |  aim: wjoelburton
> Independent Knowledge Management Consultant

I think that the source code may be a better answer to your questions,
so this is basically what I'm doing:

---
Dim conn As ADODB.Connection
Dim codes() As Long
Dim array1() As Double
Dim array2() As Double
Dim array3() As Double
.
.
.
.
Dim array20() As Double
Dim size As Long

' The arrays have always the same size (868): Here they are resized and
filled with data
.
.
.

' Then I open the connection and do the updates

conn.Open "DSN=mydb;uid=username;pwd=mypassword"

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

---

pgsql-odbc by date:

Previous
From: Joel Burton
Date:
Subject: Re: ODBC Performance
Next
From: Joel Burton
Date:
Subject: Re: ODBC Performance