Re: Turn off implicit BEGIN from ODBC driver on Windows? - Mailing list pgsql-interfaces

From Adam Lang
Subject Re: Turn off implicit BEGIN from ODBC driver on Windows?
Date
Msg-id 006f01c07fc2$f46952a0$330a0a0a@6014cwpza006
Whole thread Raw
In response to Turn off implicit BEGIN from ODBC driver on Windows?  ("Doug Haddan" <dhadden2@home.com>)
Responses Re: Turn off implicit BEGIN from ODBC driver on Windows?
List pgsql-interfaces
Did you try putting a couple SQL statements between the BeginTrans and
CommitTrans and see what happened?

Adam Lang
Systems Engineer
Rutgers Casualty Insurance Company
http://www.rutgersinsurance.com
----- Original Message -----
From: "Doug Haddan" <dhadden2@home.com>
To: <pgsql-interfaces@postgresql.org>
Sent: Sunday, January 14, 2001 5:27 PM
Subject: [INTERFACES] Turn off implicit BEGIN from ODBC driver on Windows?


Two questions really...

(1) Is there a way to turn off the implicit BEGIN that PsqlODBC sends to
PostgreSQL? I want to use multiple SQL statements within transactions.

(2) Is there a way to stop PsqlODBC from sending ABORT when disconnnected
and there is no transaction in progress? (Not so critical as first
question.)

I know that the ODBC driver is sending the BEGIN and ABORT on its own by
viewing the psqlodbc_%.log file and observing postmaster response.

I am using...
+ PostgreSQL v7.0.3 (on Linux)
+ PsqlODBC v6.50
+ Microsoft Windows NT SP6a
+ Microsoft Visual Basic 6 SP4
+ Microsoft ADO v3.520.5303.2

Following is a code sample with comments.

-------------------------------------------------------------------
Dim cn As ADODB.Connection
Set cn = New ADODB.Connection
With cn   .ConnectionString = MyConnectionString   .Open   .BeginTrans  '<--- Seems to be ignored by ODBC driver.
.CommitTrans '<--- Seems to be ignored by ODBC driver.
 
End With
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
With rs   .ActiveConnection = cn   .Source = "BEGIN WORK;"   .Open
'-- At this point, the ODBC driver sends "BEGIN" and "BEGIN WORK;"
'-- to PostgreSQL and the postmaster complains by displaying the
'-- message "BEGIN: already a transaction in progress.   .Source = "COMMIT WORK;"   .Open  '<--- Seems to work OK.
End With
cn.Close
Set rs = Nothing
Set cn = Nothing
End
'-- The ODBC driver sends "ABORT" to PostgreSQL. The postmaster
'-- displays "ROLLBACK: no transaction in progress" and displays the
'-- message "pg_recvbuf: unexpected EOF on client connection".
-------------------------------------------------------------------

Any help would be appreciated.

Thanks!
Doug




pgsql-interfaces by date:

Previous
From: "Adam Lang"
Date:
Subject: Re: ODBC with VISUAL BASIC applications to access POSTGRESQL db on LINUX??
Next
From: Michael Fork
Date:
Subject: ODBC and COPY FROM