From: | Kris Jurka <books(at)ejurka(dot)com> |
---|---|
To: | Xavier Poinsard <xpoinsard(at)free(dot)fr> |
Cc: | pgsql-jdbc(at)postgresql(dot)org |
Subject: | Re: Patch for jdbc escaped functions |
Date: | 2004-11-20 04:47:41 |
Message-ID: | Pine.BSO.4.56.0411192332570.303@leary.csoft.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc |
On Fri, 19 Nov 2004, Xavier Poinsard wrote:
> Hi,
> I saw that escaped functions were on the TODO list.
> Here is a patch that prepare for adding escaped functions.
> It supports nested escapes.
> As example I have coded the concat function.
> Tests and metadata updates are included.
> If the patch is accepted, I will add more functions.
> Any comments are welcome.
>
This code is not quite right in its determination of function arguments
because it stops checking for literal and identifier markers.
Consider that {fn concat('(', a."(")} should work.
I also don't like the prospect of a giant if/else block that has every
function that must do some kind of mapping/translation. What about a more
pluggable architecture perhaps along the lines of the following:
public interface StandardFunction {
public void toSQL(StringBuffer sb, ArrayList args);
}
Then a static HashMap of say lowercase function name -> StandardFunction
implementation can move all of the mapping/translation into a separate
place. Maybe that's overkill in the opposite direction. Thoughts?
Kris Jurka
From | Date | Subject | |
---|---|---|---|
Next Message | Oliver Jowett | 2004-11-20 11:11:57 | Re: [JDBC] Strange server error with current 8.0beta driver |
Previous Message | Barry Lind | 2004-11-20 01:40:04 | Re: [JDBC] Strange server error with current 8.0beta driver |