Date types in where clause of PreparedStatement

Started by Ian deSouzaabout 25 years ago2 messagesgeneral
Jump to latest
#1Ian deSouza
iandesouza@earthlink.net

Can anybody show any reason why the code using a prepared statement with a
where clause using a date won't find any records on PostgreSQL but WILL work
using Access and the jdbc-odbc bridge?

ie.

SQL: select
OrderID,CustomerID,EmployeeID,OrderDate,RequiredDate,ShippedDate,ShipVia,Fre
ight,ShipName,ShipAddress,ShipCity,ShipRegion,ShipPostalCode,ShipCountry
from Orders where OrderDate = ?
Setting value: OrderDate 1996-07-05 00:00:00.0

It does not cause an exception, but fails to retrieve anything with
PostgreSQL yet works and retrieves the right record with Access.

I further verified that a record does exist with the PostreSQL database.

#2Gregory Wood
gregw@com-stock.com
In reply to: Ian deSouza (#1)
Re: Date types in where clause of PreparedStatement

Using a DateTime value in a WHERE clause is not a good idea for the reason
that DateTimes are usually represented by a floating point value in the
database itself. And since floating point numbers are prone to rounding
errors, they don't make for a good unique identifier.

If you have to use dates in your WHERE clauses, try doing a BETWEEN.

Greg

----- Original Message -----
From: "Ian deSouza" <iandesouza@earthlink.net>
To: <pgsql-general@postgresql.org>
Sent: Sunday, February 18, 2001 11:17 AM
Subject: Date types in where clause of PreparedStatement

Can anybody show any reason why the code using a prepared statement with a
where clause using a date won't find any records on PostgreSQL but WILL

work

using Access and the jdbc-odbc bridge?

ie.

SQL: select

OrderID,CustomerID,EmployeeID,OrderDate,RequiredDate,ShippedDate,ShipVia,Fre

Show quoted text

ight,ShipName,ShipAddress,ShipCity,ShipRegion,ShipPostalCode,ShipCountry
from Orders where OrderDate = ?
Setting value: OrderDate 1996-07-05 00:00:00.0

It does not cause an exception, but fails to retrieve anything with
PostgreSQL yet works and retrieves the right record with Access.

I further verified that a record does exist with the PostreSQL database.