Re: Why forbid "INSERT INTO t () VALUES ();"

From: Fabien COELHO <coelho(at)cri(dot)ensmp(dot)fr>
To: Vik Fearing <vik(at)postgresfriends(dot)org>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Thomas Kellerer <shammat(at)gmx(dot)net>, PostgreSQL Developers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: Why forbid "INSERT INTO t () VALUES ();"
Date: 2020-06-25 14:00:03
Message-ID: alpine.DEB.2.22.394.2006251542380.2939276@pseudo
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


Bonjour Vik,

>>> It's forbidden because the SQL standard forbids it.
>>
>> Ok, that is definitely a reason. I'm not sure it is a good reason, though.

> It's a very good reason. It might not be good *enough*, but it is a
> good reason.

Ok for good, although paradoxically not "good enough":-)

>> Why would the standard forbid it? From the language design point of
>> view[...]
>
> Don't go there. There is nothing but pain there.

Hmmm. I like to understand. Basically it is my job.

Otherwise, yes and no. Postgres could decide (has sometimes decided) to
extend the syntax or semantics wrt the standard if it makes sense, so that
when a syntax is allowed by the standard it does what the standard says,
which I would call positive compliance and I would support that, but keep
some freedom elsewhere.

--
Fabien.

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2020-06-25 14:13:00 Re: More tzdb fun: POSIXRULES is being deprecated upstream
Previous Message Masahiko Sawada 2020-06-25 13:59:08 Re: xid wraparound danger due to INDEX_CLEANUP false