Tenho o seguinte código que executa uma Store Procedure no meu Banco de Dados Oracle:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.*;
import java.sql.*;
import oracle.jdbc.pool.*;
public class Consulta {
/**
* Creates a new instance of <code>Consulta</code>.
*/
Connection conexao = null;
public void Consulta(){
}
public void Conecta() {
try{
String teste="";
conn con = new conn();
conexao = con.getConnection();
CallableStatement stmt1 = conexao.prepareCall("call teste_data(?,?,?)");
stmt1.setString(1,"2007/07/08 19:06:09");
stmt1.setString(2,"2007/07/08 19:40:40");
stmt1.setString(3,"receptor");
ResultSet rs1=stmt1.executeQuery();
stmt1.close();
rs1.close();
}
catch(SQLException e){
e.printStackTrace();
}
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
Consulta consulta = new Consulta();
consulta.Conecta();
}
}
Mas quando eu executo ela mostra o seguinte erro:
java.sql.SQLException: ORA-01843: not a valid monthat oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:125) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:305) at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:272) at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:623) at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:181) at oracle.jdbc.driver.T4CPreparedStatement.execute_for_rows(T4CPreparedStatement.java:543) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1028) at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2888) at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:2929) at Consulta.Conecta(Consulta.java:29) at Consulta.main(Consulta.java:44)</blockquote>A instrulção SQL quando jogada no Banco de Dados funciona corretamente mas quando executo pelo código não vai. O que pode ser??
