Re: Using CTID system column as a "temporary" primary key
Dominique Devienne <ddevienne@gmail.com>
From: Dominique Devienne <ddevienne@gmail.com>
To: Adrian Klaver <adrian.klaver@aklaver.com>
Cc: Sebastien Flaesch <sebastien.flaesch@4js.com>,
Kirk Wolak <wolakk@gmail.com>, Geoff Winkless <pgsqladmin@geoff.dj>,
pgsql-general <pgsql-general@lists.postgresql.org>
Date: 2023-03-30T08:01:29Z
Lists: pgsql-general
On Wed, Mar 29, 2023 at 9:23 PM Adrian Klaver <adrian.klaver@aklaver.com> wrote: > On 3/29/23 12:11, Sebastien Flaesch wrote: > > Oh the use of default keyword is new to me, thanks for that. > > > > But to make PostgreSQL more Informix-compatible, > > zero should have been considered as well. Perhaps. > 1) Why? Down the road to compatibility with some undetermined group of > databases lies mayhem. > Sure. Unless it's opt-in, see below. > 2) 0 can be a valid sequence value: > Of course. Yet, as above, if that is opt-in as specified in the `create table` DDL somehow, then why not? BTW, default and 0 are not the same thing. You cannot bind "default" in place of an integer-valued prepared-statement placeholder, in a binary mode insert. So it is definitely not the same thing. So while I can accept that not implementing that particular informix compatibility wart is a perfectly valid position, for impl and maintenance cost, the arguments I've read so far can be "easily" side-stepped from a technical perspective I suspect. FWIW.