From: | Markus Schaber <schabi(at)logix-tt(dot)com> |
---|---|
To: | Hugo Sacramento <hugo_sacramento(at)yahoo(dot)com(dot)br> |
Cc: | pgsql-jdbc(at)postgresql(dot)org |
Subject: | Re: Retrieve Query |
Date: | 2006-02-27 10:38:26 |
Message-ID: | 4402D6A2.4080200@logix-tt.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc |
Hi, Hugo,
Hugo Sacramento wrote:
> How do I to retrieve the string query prepared by a PreparedStatement??
> -------------
> PreparedStatement stmt = con.prepareStatement("select * from abc where
> x=?");
> stmt.setString(1, x);
> System.out.println("My Prepared Query:" + stmt.toString());
> ------------
>
> but it don't work.
There are at least two potential problems:
- The statement is prepared server-side, and the parameters are sent
separately (binding). Only the server has the "real" representation of
the complete statement. So the prepared statement can only give an
approximation, which is what pgjdbc does.
- Most connection pooling and datasource mechanisms (e. G. in jboss)
wrap your connection and all other classes (including the statement),
but don't delegate the toString() method, so you'll only get something
like "org(dot)jboss(dot)pool(dot)wrappedStatement(at)4711".
HTH,
Markus
--
Markus Schaber | Logical Tracking&Tracing International AG
Dipl. Inf. | Software Development GIS
Fight against software patents in EU! www.ffii.org www.nosoftwarepatents.org
From | Date | Subject | |
---|---|---|---|
Next Message | Achilleus Mantzios | 2006-02-27 11:55:31 | Re: Retrieve Query |
Previous Message | Björn Bergenheim | 2006-02-26 23:59:22 | How to get batch commands to work |