Re: get SQL statement from PreparedStatement
- From: IchBin <weconsul@xxxxxxx>
- Date: Thu, 23 Feb 2006 15:34:46 -0500
JY wrote:
"Raymond DeCampo" <nospam@xxxxxxxxxxxx> wrote in message news:JKnLf.28689$j53.21557@xxxxxxxxxxxxxxxxxxxxxxxThat is because the SQL statement is embedded in the DataWindow object.JY wrote:"Raymond DeCampo" <nospam@xxxxxxxxxxxx> wrote in message news:S0nLf.24789$Zl1.665@xxxxxxxxxxxxxxxxxxxxxxxPerhaps the best approach will be to examine the logging options provided by your JDBC driver. But I re-iterate, the term "SQL message" does not necessarily apply to a PreparedStatement. Also, you do not "execute the SQL in [a] PreparedStatement." You execute the PreparedStatement.
JY wrote:
How can I get the SQL statement which will be submitted by the PreparedStatement to the database to execute?That isn't how prepared statements (necessarily) work. The idea behind the prepared statement is that the driver or database will precompile the SQL into some driver or database specific format that allows for value bindings. Typically the execution plan for the SQL is determined by this (the execution plan is the steps the database will take to retrieve the results; e.g., use index XYZ, full table scan of ABC, etc.).
It is possible for a JDBC driver to trivially implement PreparedStatements by generating SQL and transmitting that to the database. However, in such a driver PreparedStatements would not be any more efficient than regular Statements.
If what you really wanted to achieve was to known what parameters are being passed to the PreparedStatement there are JDBC spy tools that can help.
HTH,
Ray
--
This signature intentionally left blank.
I need to print out all the SQL messages as being submitted to database, in my log file. I want to write a method which will take PreparedStatement as an argument and print out its SQL to server.log file. Anywhere in my application after I have set arguments to a PreparedStatement, I will call this method before executing the SQL in PreparedStatement. Thats why I ask this question. Any way I can achieve this task?
HTH,
Ray
--
This signature intentionally left blank.
So java does not have a function which can tell me the SQL statement which will be executed? In other languages like PowerBuilder, you can get the SQL statement you are going to submit.
--
Thanks in Advance...
IchBin, Pocono Lake, Pa, USA http://weconsultants.servebeer.com/JHackerAppManager
__________________________________________________________________________
'If there is one, Knowledge is the "Fountain of Youth"'
-William E. Taylor, Regular Guy (1952-)
.
- References:
- get SQL statement from PreparedStatement
- From: JY
- Re: get SQL statement from PreparedStatement
- From: Raymond DeCampo
- Re: get SQL statement from PreparedStatement
- From: JY
- Re: get SQL statement from PreparedStatement
- From: Raymond DeCampo
- Re: get SQL statement from PreparedStatement
- From: JY
- get SQL statement from PreparedStatement
- Prev by Date: Re: Memory Leakage drawing Images from Stream - Minimum example
- Next by Date: Re: get SQL statement from PreparedStatement
- Previous by thread: Re: get SQL statement from PreparedStatement
- Next by thread: Re: get SQL statement from PreparedStatement
- Index(es):
Relevant Pages
|