Received: from p2272.nsk.ne.jp (p2272.nsk.ne.jp [210.145.18.145]) by mail.postgresql.org (8.11.1/8.11.1) with ESMTP id f19EcWx33887; Fri, 9 Feb 2001 09:38:32 -0500 (EST) (envelope-from Inoue@tpf.co.jp) Received: from mcadnote1 (ppm152.noc.fukui.nsk.ne.jp [210.161.188.71]) by p2272.nsk.ne.jp (8.9.3/3.7W-20000722) with SMTP id XAA09400; Fri, 9 Feb 2001 23:37:03 +0900 (JST) From: "Hiroshi Inoue" To: =?iso-8859-1?Q?L=3Fzl=B7Tibor?= , "Steve Wranovsky" Cc: , , Subject: RE: 7.1 beta 3 Linux ODBC BEGIN Behaviour Date: Fri, 9 Feb 2001 23:38:22 +0900 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0) X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700 Importance: Normal In-Reply-To: X-Archive-Number: 200102/72 X-Sequence-Number: 1025 > -----Original Message----- > From: LászlETibor > Sent: Friday, February 09, 2001 8:03 PM > To: pgsql-interfaces@postgresql.org > Subject: RE: [INTERFACES] 7.1 beta 3 Linux ODBC BEGIN Behaviour > > > > I found another slight behavior change with the Linux > > client ODBC library between 7.0.3 and the 7.1 beta 3 > > release. We are running under Redhat 6.0. > > > > We have set the ODBC driver in autocommit off mode. With > > the 7.0.3 driver, a BEGIN was automatically issued > > before the driver encountered a INSERT/UPDATE/DELETE. With > > the 7.1 beta 3 ODBC driver, it now also issues a BEGIN when it > > encounters a SELECT. > > > > Is this the expected behavior under 7.1? > > I think it can be. (We assumed this behavior a year ago.) Sometimes we > need transaction time in the beginning of a transaction. We can > get it with > a > SELECT. Because the transaction can begin only with an update statement, > we must do a workaround - until now. > Hmm, seems I committed a change too hastely. Hiroki Kataoka also has a similar opinion. The following statement types are in psqlodbc.h. Well how about "begin" before TYPE_SELECT etc and "commit" before TYPE_OTHER statements ? /* statement types */ enum { STMT_TYPE_UNKNOWN = -2 STMT_TYPE_OTHER = -1, STMT_TYPE_SELECT = 0, STMT_TYPE_INSERT, STMT_TYPE_UPDATE, STMT_TYPE_DELETE, STMT_TYPE_CREATE, STMT_TYPE_ALTER, STMT_TYPE_DROP, STMT_TYPE_GRANT, STMT_TYPE_REVOKE, }; Regards, Hiroshi Inoue