From: | Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> |
---|---|
To: | Peter Eisentraut <peter_e(at)gmx(dot)net> |
Cc: | Robert Haas <robertmhaas(at)gmail(dot)com>, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Artur Zakirov <a(dot)zakirov(at)postgrespro(dot)ru>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: plpgsql - DECLARE - cannot to use %TYPE or %ROWTYPE for composite types |
Date: | 2016-03-03 10:45:25 |
Message-ID: | CAFj8pRBSGbNCFcdJYObitARZznwxXYFeP=d_2uxsK+HW2tOPPQ@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi
2016-02-24 22:18 GMT+01:00 Peter Eisentraut <peter_e(at)gmx(dot)net>:
> On 1/18/16 4:21 PM, Robert Haas wrote:
> > One idea that occurs to me is: If you can DECLARE BAR FOO%TYPE, but
> > then you want to make BAR an array of that type rather than a scalar,
> > why not write that as DECLARE BAR FOO%TYPE[]? That seems quite
> > natural to me.
>
> Right, and it's arguably dubious that that doesn't already work.
> Unfortunately, these % things are just random plpgsql parser hacks, not
> real types. Maybe this should be done in the main PostgreSQL parser
> with parameter hooks, if we wanted this feature to be available outside
> plpgsql as well.
>
> > I think the part of this patch that makes %TYPE work for more kinds of
> > types is probably a good idea, although I haven't carefully studied
> > exactly what it does.
>
> I agree that this should be more general. For instance, this patch
> would allow you to get the element type of an array-typed variable, but
> there is no way to get the element type of just another type. If we
> could do something like
>
> DECLARE
> var ELEMENT OF point;
>
> (not necessary that syntax)
>
> then
>
> DECLARE
> var ELEMENT OF othervar%TYPE;
>
> should just fall into place.
>
>
I am sending update of this patch. The basic concept is same, syntax was
changed per your and Robert requirement.
Regards
Pavel
Attachment | Content-Type | Size |
---|---|---|
plpgsql-ref-element-array-type-04.patch | text/x-patch | 22.6 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Tobias Florek | 2016-03-03 10:49:11 | Re: [NOVICE] WHERE clause not used when index is used |
Previous Message | Emre Hasegeli | 2016-03-03 10:45:19 | Re: SP-GiST support for inet datatypes |