SetDate para Oracle não funciona

Olá a todos,
estou com um problema num select:
sql = “Select sum(PESO_BRUTO - PESO_TARA) as PESO from OS_PESAGENS where COD_EMPRESA = ? and DT_MOV < ?”;
PreparedStatement psmt = conn.prepareStatement(sql);
psmt.clearParameters();
psmt.setString(1, unidade);
java.sql.Date date = null;
DateFormat formatter = new SimpleDateFormat(“dd/MM/yyyy”);
try {
date = new java.sql.Date(((java.util.Date) formatter.parse(Data)).getTime());
} catch (ParseException ex) {
Logger.getLogger(OracleAcesso.class.getName()).log(Level.SEVERE, null, ex);
}
psmt.setDate(2, date);
ResultSet rs = psmt.executeQuery();

O problema está no select,
se coloco DT_MOV < ?: da erro
se coloco DT_MOV = ?: retorna para a data normal.
ou seja,
só funciona com sinal de =. Se colocar >, <, <=, >= não funciona.

Ao fazer comparações entre datas é sempre bom ter certeza de que ambas estão no mesmo formato e com a mesma precisão, porque o Oracle armazena até os segundos… Experimenta dar um TRUNC(DT_MOV) na tua instrução SQL.

Fiz o TRUNC e nada.
Mesmo assim obrigado.

Então, agora precisa ver como a data está lá no banco, se o formato bate com esse que vocÊ tá mandando no parâmetro.
Você mencionou erro… qual erro exatamente?
E rodar a consulta direto no banco, já testou?

Oi Ademilton,
usando o próprio Netbeans, o campo está assim: 2005-05-11 00:00:00.0 (jdbc)
usando o Toad está assim: 11/05/2005
Desculpe por mencionar a palavra erro.
Na verdade me referia por não voltar nada da sql.
Mas executando os comandos diretamente na base, funciona sem problemas.

Isto me deixou confuso, mas acredito que temos que deixar padrão com o jdbc.
Mas ainda não entendo porque dá certo com = e não dá certo com os outros >, <, >=, <=.

Obrigado.