Re: ADO and sequences - Mailing list pgsql-odbc

From Hiroshi Inoue
Subject Re: ADO and sequences
Date
Msg-id 44EC1689.8080907@tpf.co.jp
Whole thread Raw
In response to ADO and sequences  (Andreas <maps.on@gmx.net>)
Responses Re: ADO and sequences  (Andreas <maps.on@gmx.net>)
List pgsql-odbc
Andreas wrote:
> Hi,
>
> I'd like to write to PG from Access2000 with ADODB.
> I got it running, but I'd like to know the sequence-nr that gets used
> when a new record is created.
>
> I open a recordset with
>        .CursorLocation = adUseClient
>        .CursorType = adOpenStatic
>        .LockType = adLockOptimistic
> then I call its AddNew method, the columns get filled and the recordset
> is closed.
> The primary key is a SERIAL.
> Is there a way to read the pkey before I commit the record?
> Access knows it's Autonumbers after AddNew when I use it's JET db-engine.
>
> A "select currval...." after the AddNew yields
> Error while executing the query;
> ERROR:  currval of sequence "personen_person_id_seq" is not yet defined
> in this session
>
> I'd rather not use currval anyways. I'd prefer to have the program not
> know to much of the structure that sits in the db backend, like the
> sequence's name in this case.
>
> Can I get something like this :
>
> rs.AddNew
>     lngID = rs!id

Try to get rs!id here is meaningless but

>     rs!field1 = value1
>     rs!field2 = value2
> ....
> rs.update

you can get rs!id here maybe.
Am I misunderstanding your point ?

> rs.close

regards,
Hiroshi Inoue

pgsql-odbc by date:

Previous
From: Hiroshi Inoue
Date:
Subject: Re: Parameters.Refresh and RETURN setof TEXT
Next
From: Bart Samwel
Date:
Subject: Output parameters problem