preparedStatement时具有时间戳比较两个日期
问题描述:
我有此代码preparedStatement时具有时间戳比较两个日期
preparedStatement = jdbcManager.getConnection().prepareStatement(query);
Date start; /*get from postgres column type-> Timestamp without time zone*/
java.sql.Timestamp timestamp = new java.sql.Timestamp(start.getTime());
log.debug("Parametro d'ingresso query: "+timestamp);
preparedStatement.setTimestamp(1, timestamp);
和我有此查询
SELECT
DATA
FROM MY_TABLE
WHERE DATA > ?
列数据处于Oracle数据库DATA_TYPE = DATE
的比较查询不起作用, 我做错了什么?
答
您在比较日期与时间戳。取代时间戳,取得java.sql.Date。并且在准备好的语句中,使用setDate而不是setTimeStamp。
你执行了查询吗?你得到了什么? – Dewfy
如果您使用的是Oracle,为什么要添加'postgresql'标签? –
“比较不起作用”是指您仅从第二天开始获取数据,而不是从第一天开始获取数据? –