From: | Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com> |
---|---|
To: | pgsql-general(at)lists(dot)postgresql(dot)org |
Subject: | Re: Using CTID system column as a "temporary" primary key |
Date: | 2023-03-29 19:15:09 |
Message-ID: | 8708606d-e6f2-07f5-b374-465224de9c66@aklaver.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On 3/29/23 09:43, Peter J. Holzer wrote:
> On 2023-03-29 07:59:54 -0700, Adrian Klaver wrote:
>> On 3/29/23 07:19, Sebastien Flaesch wrote:
>>> INSERT statements must not use the serial column, so you have to list
>>> all columns of the table and provide only the values of the non-serial
>>> columns. With Informix you could just specific a zero to get a new
>>> generated serial, but seems this has never been considered with
>>> PostgreSQL.
>>
>> Yes it has:
> [...]
>> insert into seq_test values(default, 'test');
>
> Default is not the same as zero.
It accomplishes the same thing, a place holder value can be used to fire
the sequence without column qualifying the insert/update. Furthermore it
works over all columns. So I would say it has been considered by
Postgres as a way to 'to get a new generated serial'.
>
> hp
>
--
Adrian Klaver
adrian(dot)klaver(at)aklaver(dot)com
From | Date | Subject | |
---|---|---|---|
Next Message | Christophe Pettus | 2023-03-29 19:18:30 | Re: Using CTID system column as a "temporary" primary key |
Previous Message | Sebastien Flaesch | 2023-03-29 19:11:36 | Re: Using CTID system column as a "temporary" primary key |