| From: | "Gevik Babakhani" <pgdev(at)xs4all(dot)nl> | 
|---|---|
| To: | "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us> | 
| Cc: | <pgsql-hackers(at)postgresql(dot)org> | 
| Subject: | Re: Proposal TODO Item: SQL-language reference parameters by name | 
| Date: | 2007-10-31 21:31:07 | 
| Message-ID: | 011f01c81c05$5ed264c0$0a01a8c0@gevmus | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
Thank you Tom.
After running a create function statement (language sql), the final check 
for a column is done in
parse_expr.c:transformColumnRef in case 1. Would this be the correct place 
to implement
functionality for a final match?
Regards,
Gevik.
----- Original Message ----- 
From: "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Gevik Babakhani" <pgdev(at)xs4all(dot)nl>
Cc: <pgsql-hackers(at)postgresql(dot)org>
Sent: Wednesday, October 31, 2007 4:36 AM
Subject: Re: [HACKERS] Proposal TODO Item: SQL-language reference parameters 
by name
> "Gevik Babakhani" <pgdev(at)xs4all(dot)nl> writes:
>>> I think the most likely implementation would involve adding hooks
>>> in the parser at places where "unknown column" errors are about to
>>> be thrown, so that a function language could check for a match to
>>> one of its variable names only after the query-exposed names are
>>> checked.
>
>> Would this be the right path to follow?
>
>> Assuming we are allowed to include parameter names into ParseState, we 
>> can
>> match the "non existing" colnames against the list of parameter
>> names when transformColumnRef (or someware safe in that path).
>
> You are assuming that the function language isn't interested in taking
> some extra action when a reference to a parameter is recognized.  This
> is demonstrably false for plpgsql, for one --- it wants to build a list
> of just which variables it will have to pass into each SQL command.
> A hook function can take care of that, a passive data structure can't.
>
> regards, tom lane
>
> ---------------------------(end of broadcast)---------------------------
> TIP 7: You can help support the PostgreSQL project by donating at
>
>                http://www.postgresql.org/about/donate
> 
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2007-10-31 22:11:57 | Re: psql show dbsize? | 
| Previous Message | Bruce Momjian | 2007-10-31 21:15:33 | Re: A small rant about coding style for backend functions |