I have a java application that is connected by JDBC and I make this query:
My code:
String date = "21-Dec-16";
StringBuilder query = new StringBuilder("SELECT * ");
query.append("FROM TEST WHERE PUBLISHED_DATE='").append(date).append("'");
connection = getConnection(jdbc);
stmt = connection.createStatement();
rs = stmt.executeQuery(query.toString());
syso query => select * from TEST where PUBLISHED_DATE='21-Dec-16'
and the error I get:
java.sql.SQLDataException: ORA-01858: a non-numeric character was found where a numeric was expected
TB I've tried:
select * from TEST where PUBLISHED_DATE=TO_DATE('21-Dec-16','DD-MON-RR')
and the error:
java.sql.SQLDataException: ORA-01843: not a valid month
However, I run the same query on my sql developer and it works