terça-feira, 3 de março de 2009

Call Procedure Oracle with Java and Param Out

Segue um exemplo de como executar uma procedure com parametro de entrada e saida no oracle.


public static void main(String[] args) {
try {

Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:xe";
Connection con = DriverManager.getConnection(url, db_user, password);
System.out.println("Connected to database");

SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd/MM/yyyy");
Date now = new java.sql.Date(simpleDateFormat.parse("12/02/2001").getTime());

String command = "{call SALDOS(?,?)}";
CallableStatement cstmt = con.prepareCall (command);
cstmt.registerOutParameter(2, Types.DECIMAL);

cstmt.setDate(1, now);
cstmt.execute();
Double str = cstmt.getDouble(2);

cstmt.close();

System.out.println("Retorno: "+str);

} catch (Exception e) {
e.printStackTrace();
}
}


isso foi testado com oracle 9 e 10 xe
usando driver jdbc oracle
ojdb14.jar
ojdb14_g.jar

Nenhum comentário:

Postar um comentário