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
functionality for a final match?
----- Original Message -----
From: "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Gevik Babakhani" <pgdev(at)xs4all(dot)nl>
Sent: Wednesday, October 31, 2007 4:36 AM
Subject: Re: [HACKERS] Proposal TODO Item: SQL-language reference parameters
> "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
>> Would this be the right path to follow?
>> Assuming we are allowed to include parameter names into ParseState, we
>> 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
In response to
pgsql-hackers by date
|Next:||From: Tom Lane||Date: 2007-10-31 22:11:57|
|Subject: Re: psql show dbsize? |
|Previous:||From: Bruce Momjian||Date: 2007-10-31 21:15:33|
|Subject: Re: A small rant about coding style for backend