Re: Prepared statement parameter and timestamp

Поиск
Список
Период
Сортировка
От Kris Jurka
Тема Re: Prepared statement parameter and timestamp
Дата
Msg-id Pine.BSO.4.64.0704091208320.13571@leary.csoft.net
обсуждение исходный текст
Ответ на Prepared statement parameter and timestamp  ("ste.buffaishere@tin.it" <ste.buffaishere@tin.it>)
Ответы Re: Prepared statement parameter and timestamp
Список pgsql-jdbc

On Tue, 3 Apr 2007, ste.buffaishere@tin.it wrote:

> PreparedStatement ps = conn.prepareStatement(
> "SELECT date_trunc('week', {ts ?})");
> ps.setTimestamp(1, new java.sql.
> Timestamp(
>                 new java.util.Date().getTime()));
>
> fails miserably with
> org.postgresql.util.PSQLException: ERROR: syntax
> error at or near "$1"


The JDBC driver translates the escape sequence to:

SELECT date_trunc('week', timestamp ?)

but the server can't handle the prefix timestamp cast for anything other
than plain literals, so it doesn't work for the parameter.

I suppose the driver should instead try to rewrite this as:

SELECT date_trunc('week', ?::timestamp)

I'm not sure how much work that would be to do.

Kris Jurka


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

Предыдущее
От: Kris Jurka
Дата:
Сообщение: Re: Problem with Running Query
Следующее
От: Bellur Ashwin
Дата:
Сообщение: Exception in running query