From: Charles Hauser <chauser@duke.edu>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: pgsql-sql@postgresql.org
Subject: Re: problem fetching currval of sequence
Date: Tue, 6 Aug 2002 12:43:32 -0400
Message-ID: <a05111b02b975aa9d9743@[152.3.11.193]> (raw)
In-Reply-To: <20533.1028650590@sss.pgh.pa.us>
References: <a05111b00b97594e67c38@[152.3.11.193]>
<20533.1028650590@sss.pgh.pa.us>
Tom,
Quite right, I did mean to do an INSERT. Changing the script to do
so though I still get the error:
ERROR: gb_gb_id_seq.currval is not yet defined in this session.
foreach $id(sort keys %ACCN) {
$conn->exec(
"INSERT INTO gb (clone_id,accn,gi)
VALUES ( '$ACCN{$id}{clone_id}','$ACCN{$id}{gb}','$ACCN{$id}{gi}')";
);
$result = $conn->exec("SELECT currval('gb_gb_id_seq');");
die $conn->errorMessage unless PGRES_TUPLES_OK eq
$result->resultStatus;
$gb_id = $result->fetchrow;
$ACCN{$id}{gb_id} = $gb_id;
}
>Charles Hauser <chauser@duke.edu> writes:
>> foreach $id(sort keys %ACCN) {
>> $conn->exec(
>> "UPDATE gb SET accn_no = '$ACCN{$id}{gb}',gi_no =
>> '$ACCN{$id}{gi}' WHERE clone_id = '$ACCN{$id}{clone_id}'"
>> );
>
>> $result = $conn->exec("SELECT currval('gb_gb_id_seq');");
>
>This isn't inserting any new row, so nextval() isn't called, so there's
>nothing for currval() to work on. Are you sure you did not mean to do
>an INSERT?
>
>If you did want an UPDATE, seems like you could do
>
> SELECT gb_id FROM gb WHERE clone_id = '$ACCN{$id}{clone_id}'
>
> regards, tom lane
--
Regards,
Chuck
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: chauser@duke.edu, tgl@sss.pgh.pa.us
Subject: Re: problem fetching currval of sequence
In-Reply-To: <a05111b02b975aa9d9743@[152.3.11.193]>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox