Search Postgresql Archives

Re: currval = currval+1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Jun 1, 2011 at 9:27 AM, salah jubeh <s_jubeh@xxxxxxxxx> wrote:
> I have the following SQL statements
>
> BEGIN;
> -- account_id is a sequence
> INSERT INTO account (name) VALUES ('test customer'||random()::text);
> -- account_id is a foreign key
> INSERT INTO account_detail (account_id,......)  VALUES ((SELECT * from
> currval('account_acccount_id_seq')), ........);
> COMMIT;
>
> ERROR:  insert or update on table "account_detail" violates foreign key
> constraint ...
>
>
>
> I have executed the above without a transaction but in the same session, and
> the issue was that the current value of the account points to the curval + 1
>
> I have solved the above by subtracting 1 in the second insert statement. Why
> I am having this problem, I have used current value many time and this is
> the first time I have this behavior.


works for me -- are you sure you don't have a trigger or something
else going on behind the scenes?

merlin

-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux