Verwendung von java.sql.Objekt Timestamp in einer sql-Abfrage

Ich versuche eine Abfrage ausführen, die in java verwendet java.sql.Objekt Timestamp als Datum zu vergleichen mit den in der where-Klausel.

Hier ist, wie die Abfrage-Zeichenfolge, die erstellt wird in Java

 String getTransactionsSQL =  "Select transaction_seq " +
    "From transactions ct " +
    "Where id = 'ABCD'" + 
    "And ct.out_msg_timestamp" +
    "<= to_date('" + parseDate.getTimeStamp() +"','YYYY-MM-DD HH:MI:SS..')" +
    "order by transaction_seq"; 

Die Aussage parseDate.getTimeStamp() gibt eine java.sql.TimeStamp Objekt, das ein Datum enthält. Hier ist ein Beispiel für die Ausgabe des System.out.println(parseDate.getTimeStamp());

2011-03-07 05:47:57.0

Wenn ich den obigen Abfrage bekomme ich diesen Fehler

 java.sql.SQLException: ORA-01843: not a valid month

Irgendwelche Hinweise?

  • Was ist der Oracle-Datentyp ct.out_msg_timestamp?
  • Seine ein 'Datum' - Feld.
  • Verwandte: stackoverflow.com/questions/3323618/...
  • Brillante Dank. Ich habe es geändert zu verwenden, PreparedStatement und SetTimeStamp.
InformationsquelleAutor ziggy | 2011-03-10
Schreibe einen Kommentar