Thread: prepareStatement()

prepareStatement()

From
Michael Allman
Date:
Does Postgres's JDBC Connection#prepareStatement(String) method support
queries that can't be prepared by the backend?  (Namely those that are not
of the SELECT, INSERT, UPDATE, or DELETE variety?)

Michael

Re: prepareStatement()

From
Oliver Jowett
Date:
Michael Allman wrote:
> Does Postgres's JDBC Connection#prepareStatement(String) method support
> queries that can't be prepared by the backend?  (Namely those that are
> not of the SELECT, INSERT, UPDATE, or DELETE variety?)

It supports any query that the backend can parse -- it uses the v3
protocol Parse/Bind messages rather than using the SQL PREPARE statement
so it's not limited to SELECT/INSERT/UPDATE/DELETE.

The main gotcha (just mentioned in my previous email) is that you can
only put parameter placeholders where there is a PARAM terminal in the
server's SQL grammar (i.e. somewhere you could legally put $1, $2, etc)

-O