Try using SELECT currval('sequenc_name');
From the docs:
Return the value most recently obtained by nextval
for this sequence in the current session. (An error is reported if nextval
has never been called for this sequence in this session.) Notice that because this is returning a session-local value, it gives a predictable answer whether or not other sessions have executed nextval
since the current session did.
This should be much faster than SELECT max(... and transaction safe.
Regards,
Ben
You should try SELECT MAX( <fieldname> ) FROM <tablename>; ??
On 2/8/06, Sistemas C.M.P. <sistemascmp@redynet4.com.ar > wrote:I am using VB6+ADO+ODBC with pgSQL.
I need to obtain the value of a serial field (autogenerated) inmediatly after I do a INSERT query. How can I do?
--
--------
Timothy Reed
tareed@gmail.com
-------------------------------------------------------------------
This email and any attachments transmitted with it are confidential (and potentially legally privileged) and intended solely for the use of the individual or entity to whom they are addressed. If you have received this email in error please notify the sender and do not store, copy or disclose the content to any other person.
It is the responsibility of the recipient to ensure that opening this message and/or any of its attachments will not adversely affect its systems. No responsibility is accepted by the sender.
-------------------------------------------------------------------