Re: transactions, serial ids, and JDBC

Neil Conway <nconway@klamath.dyndns.org>

From: Neil Conway <nconway@klamath.dyndns.org>
To: gss+pg@cs.brown.edu
Cc: PostgreSQL general mailing list <pgsql-general@postgresql.org>
Date: 2002-08-07T22:45:37Z
Lists: pgsql-general
Gregory Seidman <gss+pg@cs.brown.edu> writes:
> I don't know how to dependably get the id from the last insert. One
> possibility, I suppose, is to call nextval myself and use the value
> explicitly, but if there is a way to do it portably (i.e. not depending on
> PostgreSQL's specific implementation of a self-incrementing id field) I
> would prefer it.

Use currval() to get the last ID produced by a sequence. AFAIK most
databases implement a concept similar to sequences, but it's not
standardized -- i.e. it will be difficult or impossible to use the
same technique with different database systems.

> Oh, one more thing. I'm doing this from JDBC. Can I do transactions with a
> long text string with all of this, or do I need to send each line
> (including BEGIN and END) as a separate Statement?

Either way will work.

Cheers,

Neil

-- 
Neil Conway <neilconway@rogers.com>
PGP Key ID: DB3C29FC