How unique PK value in Postgres?
Doug Easterbrook
doug at artsman.com
Tue Feb 1 21:16:19 UTC 2022
you have to create a sequence key generator for each primay key you want.
imagine a table called F_DEFAULT
and a primary key of D_KEY
you create a sequence generator. our naming convention is table_key or. ‘f_default_d_seq_key'
CREATE SEQUENCE IF NOT EXISTS f_default_d_seq_key
INCREMENT 1
START 1
MINVALUE 1
MAXVALUE 9223372036854775807
CACHE 1;
then you give the database column a default of ’nextval’ that references the unique key generator.
ALTER TABLE IF EXISTS f_default
ADD COLUMN d_seq integer NOT NULL DEFAULT nextval('f_default_d_seq_key'::regclass);
Doug Easterbrook
Arts Management Systems Ltd.
mailto:doug at artsman.com
http://www.artsman.com
Phone (403) 650-1978
> On February 1, 2022, at 12:45 PM, Das Goravani <goravanis at gmail.com> wrote:
>
>
> Hello,
>
> When inserting, how do you get Postgres to assign a new, unique, value in the PK column?
>
> In SQLite you just pass a #NULL in that column and SQLite assigns a value.
>
> I was importing data into postgres very recently and no matter what I put in the PK column it would not accept it as cause for assigning a value. I tried 0, and NULL and of course a value. It used the values I passed.. they were from SQLite and they were in order, unique, so it worked out OK.
>
> But in general new work when inserting how do you get it to assign the value?
>
> Do you use $excludefrominserts ? That didn’t seem to work on a Smartlist with $doinserts(). I tried it, it came up with errors for the PK field anyway, even though I excluded it.
>
> ???
>
> Thanks
>
> Das Goravani
>
>
> _____________________________________________________________
> Manage your list subscriptions at https://lists.omnis-dev.com
> Start a new message -> mailto:omnisdev-en at lists.omnis-dev.com
More information about the omnisdev-en
mailing list