Re: About Connections and PreparedStatements

Поиск
Список
Период
Сортировка
От Oliver Jowett
Тема Re: About Connections and PreparedStatements
Дата
Msg-id 434D690C.6030301@opencloud.com
обсуждение исходный текст
Ответ на About Connections and PreparedStatements  (Hector Rosas <jeziel.rosas@gmail.com>)
Список pgsql-jdbc
Hector Rosas wrote:
> Hello, I have a doubt with connections and PreparedStatemens. If I open
> a connection to Postgres and then request a prepared statement, this
> will be compiled and reused as long as I don't close the connection
> right?

As long as you reuse the same PreparedStatement object, yes.

> Or it doesn't matter if I close the connection

If you close a Connection, all PreparedStatements created by that
connection are implicitly closed.

>, I'm using
> PooledConnection provided by my container (Orion),

I can't speak for that PooledConnection implementation.. it may do extra
statement caching, I don't know.

> I want to know if
> there's an advantage to keep a connections open, in order to reutilize
> PreparedStatement. Also, I'm closing PreparedStatement after every
> query, PreparedStatement need to be closed after every query right?

You do not need to close the PreparedStatement after each query.

> I
> mean, is not closing a PreparedStatement a way to increase performance?

If you close a PreparedStatement, the postgresql JDBC driver will free
any corresponding server-side resources such as server-side prepared
statements.

So if you want to avoid the parse/plan cost when reexecuting the same
query many times, you should reuse the same PreparedStatement object
without closing it between executions.

-O

В списке pgsql-jdbc по дате отправления:

Предыдущее
От: Hector Rosas
Дата:
Сообщение: About Connections and PreparedStatements
Следующее
От: Mark Lewis
Дата:
Сообщение: Re: About Connections and PreparedStatements