Re: how to continue using a connection after an error with autocommit=false

From: Heikki Linnakangas <heikki(at)enterprisedb(dot)com>
To: James Im <im-james(at)hotmail(dot)com>
Cc: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: how to continue using a connection after an error with autocommit=false
Date: 2007-02-20 10:50:50
Message-ID: 45DAD28A.2010907@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

James Im wrote:
> I just find out that I cannot continue using a connection when I use
> autocommit=false and that an sql insert failed.

That's intended behavior in PostgreSQL. I just wrote this in another
thread last week:

If you have a statement in your transaction that you know might fail,
you can use savepoints to avoid having to restart the whole transaction:

Savepoint sp = conn.setSavepoint();
try {
stmt.executeQuery("SELECT 1 FROM table_that_might_not_exist");
} catch(SQLException ex)
{
sp.rollback(sp);
}
stmt.executeQuery("SELECT * FROM table_that_exists");
...

--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Altaf Malik 2007-02-20 10:53:46 Re: how to continue using a connection after an error with autocommit=false
Previous Message James Im 2007-02-20 10:48:43 invalid byte sequence for encoding "UTF8": 0x00