Re: SQL-standard function body

From: Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
To: Vik Fearing <vik(at)postgresfriends(dot)org>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: SQL-standard function body
Date: 2020-07-02 05:47:48
Message-ID: CAFj8pRC72Qrd+SeWYypkXMCAbR=2CRu3xczD=oUdhJV0JiDT4g@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

st 1. 7. 2020 v 22:54 odesílatel Vik Fearing <vik(at)postgresfriends(dot)org>
napsal:

> On 7/1/20 10:34 PM, Pavel Stehule wrote:
> > st 1. 7. 2020 v 22:31 odesílatel Vik Fearing <vik(at)postgresfriends(dot)org>
> > napsal:
> >
> >> On 7/1/20 9:32 PM, Pavel Stehule wrote:
> >>> st 1. 7. 2020 v 20:19 odesílatel Vik Fearing <vik(at)postgresfriends(dot)org>
> >>> napsal:
> >>>
> >>>> On 7/1/20 3:36 PM, Robert Haas wrote:
> >>>>> I actually don't have a very clear idea of what the standard has to
> >>>>> say about SQL-language functions. Does it just say it's a list of
> >>>>> statements, or does it involve variables and control-flow constructs
> >>>>> and stuff like that, too?
> >>>>
> >>>>
> >>>> It's either a single sql statement, or a collection of them between
> >>>> "begin atomic" and "end". There are no variables or flow control
> >>>> constructs or anything like that, just as there are no such things
> >>>> outside of a function.
> >>>>
> >>>
> >>> What is the source of this comment?
> >>
> >>
> >> The SQL Standard.
> >>
> >
> > The SQL Standard is really big, and is very possible so I miss this part.
> > Can you send me a link?
>
>
> ISO/IEC 9075-2:2016 Section 11.60 <SQL-invoked routine>
>

I am looking there, and it looks like a subset of SQL/PSM or better -
SQL/PSM is extending this. But this part is a little bit strange, because
it doesn't introduce its own variables, but it is working with the concept
of host variables and is a little bit messy (for me). Looks like it is
introduced for usage in triggers. If we support triggers without trigger
functions, then it has sense. Without it - It is hard for me to imagine a
use case for this reduced language.

Regards

Pavel

--
> Vik Fearing
>

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message James Sewell 2020-07-02 06:39:22 Re: Threading in BGWorkers (!)
Previous Message Bharath Rupireddy 2020-07-02 05:38:23 Re: Cleanup - adjust the code crossing 80-column window limit