Literal vs parameterized 'timestamp with time zone' value

Поиск
Список
Период
Сортировка
От Christopher Hunt
Тема Literal vs parameterized 'timestamp with time zone' value
Дата
Msg-id 094DD6D8-B500-479F-B730-0BFCC256A5DE@internode.on.net
обсуждение исходный текст
Ответы Re: Literal vs parameterized 'timestamp with time zone' value  (Christopher Hunt <huntc@internode.on.net>)
Re: Literal vs parameterized 'timestamp with time zone' value  (Heikki Linnakangas <heikki@enterprisedb.com>)
Re: Literal vs parameterized 'timestamp with time zone' value  (Dave Cramer <pg@fastcrypt.com>)
Re: Literal vs parameterized 'timestamp with time zone' value  (Kris Jurka <books@ejurka.com>)
Список pgsql-jdbc
Hi there,

This one has been baffling me for several hours so I hope that the
list can help.

I'm having an awful difficulty specifying a parameter in a select
where clause of a prepared statement.

Please consider this schema:

           Table "public.moving_object_status"
     Column    |            Type             | Modifiers
--------------+-----------------------------+-----------
validtime    | timestamp(2) with time zone | not null
Indexes:
     "moving_object_status_validtime" btree (validtime)

(other columns removed for brevity).

If I create the following prepared statement:

PreparedStatement sqlStatement =
   sqlConnection.prepareStatement("select validtime from
moving_object_status where validtime < '2005-06-08T20:05:45.825+0'");

then 1 row is returned as I would expect given my dataset.

However if I use a parameter:

PreparedStatement sqlStatement =
   sqlConnection.prepareStatement("select validtime from
moving_object_status where validtime < ?");
int columnIndex = 1;
sqlStatement.setString(columnIndex++, "2005-06-08T20:05:45.825+0");

No rows are returned.

Can anyone explain the difference in results given a literal value
and a parameterised value in this context?

Kind regards,
Christopher

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

Предыдущее
От: "Albe Laurenz"
Дата:
Сообщение: SSL support for javax.sql.DataSource
Следующее
От: Christopher Hunt
Дата:
Сообщение: Re: Literal vs parameterized 'timestamp with time zone' value