Переменная связывания формата даты SQL - PullRequest
2 голосов
/ 03 августа 2010

Может кто-нибудь сказать мне, что не так с этим запросом SQL.

select 
    USERNAME, DATECREATED, CREDTYPE, USAGETYPE,  OPERATIONID, TXNID, CALLERID 
from 
    arwfissuanceauditlog 
where 
    OPERATIONID in (2104,2107) 
and datecreated >= 'to_date('2010/06/21', 'yyyy/MM/dd HH24:MI:SS')' 
and datecreated < 'to_date('2010/08/03', 'yyyy/MM/dd HH24:MI:SS')'

Я получил это сообщение, когда запустил его в SQL-разработчике

Unknown Command
Bind Variable "MI" is NOT DECLARED

Я звоню из Явы вот так

try {
            stmt = conn.createStatement();
            results = stmt.executeQuery(queryToExecute);
        } catch (SQLException e) {
            CredChangeReportSVC.DEFAULTLOGGER.error("An exception occurred while executing query: " + queryToExecute, e);
}

В логах я получаю это сообщение

ERROR 03 Aug 2010 14:51:06,939 - An exception occurred while executing query: "select USERNAME, DATECREATED, CREDTYPE, USAGETYPE,  OPERATIONID, TXNID, CALLERID from arwfissuanceauditlog where OPERATIONID in (2104,2107) and datecreated >= 'to_date('2010/06/21', 'yyyy/MM/dd HH24:MI:SS')' and datecreated < 'to_date('2010/08/03', 'yyyy/MM/dd HH24:MI:SS')'"
java.sql.SQLException: Invalid SQL type

Заранее спасибо.

1 Ответ

0 голосов
/ 03 августа 2010

Ваш формат даты указывает часть времени, но вы пропустили это в ваших строках даты и времени. Удалите «HH24: MI: SS» из строки даты и повторите попытку

...