Marcelo, vc deve definir os parametros de entrada e saida...
Este exemplo esta na documenta��o da oracle...
import java.sql.*;
import java.io.*;
import oracle.jdbc.driver.*;
....
public static void main (String args [])
throws SQLException
{
// Carrega o Driver
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
// Connecta o banco database
//
Connection conn =
DriverManager.getConnection ("jdbc:oracle:oci8:@", "scott", "tiger");
// Cria stored procedure
init (conn);
// Prepara PL/SQL call
CallableStatement call =
conn.prepareCall ("{ ? = call java_refcursor.job_listing (?)}");
// Registra os parametros, seus tipos (Entrada ou Saida)
// e sua natureza (String, Cursores, Inteiros)
call.registerOutParameter (1, OracleTypes.CURSOR);
call.setString (2, "SALESMAN");
call.execute ();
ResultSet rset = (ResultSet)call.getObject (1);
// Varre o cursor
while (rset.next ())
System.out.println (rset.getString ("ENAME"));
// Fecha os recurso
rset.close();
call.close();
conn.close();
}
Marcello Carlos Cardoso Ribeiro -SAO wrote:
>Caros...
>Algu�m tem algum exemplo uma chamada de Stored Procedure via JDBC?
>
>Eu tentei fazer :
>
> Class.forName("oracle.jdbc.driver.OracleDriver");
> Connection conn =
>DriverManager.getConnection("jdbc:oracle:thin:@10.11.1.14:1521:WSAIX",
>"userfab", "userfab");
>
> Statement stmt = conn.createStatement();
> CallableStatement cs = conn.prepareCall("{call programa}");
> ResultSet rs = cs.executeQuery();
> while(rs.next()){
> System.out.println(rs.getInt(1));
> }
>
>
>Mas dispara a seguinte exception:
>
>java.sql.SQLException: ORA-00600: internal error code, arguments: [12259],
>[], [], [], [], [], [], []
>at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)
>at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:208)
>at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:543)
>at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1405)
>at oracle.jdbc.ttc7.TTC7Protocol.fetch(TTC7Protocol.java:889)
>at oracle.jdbc.driver.OracleResultSetImpl.next(OracleResultSetImpl.java:242)
>at untitled3.Untitled1.conecta(Untitled1.java:24)
>at untitled3.Untitled1.main(Untitled1.java:11)
>
>Se eu n�o usar o rs n�o acontece nada tudo funciona Ok, por�m na hora de
>recuperar os dados do rs retorna essa excpetion.
>
>Grato...
>
>------------------------------ LISTA SOUJAVA ----------------------------
>http://www.soujava.org.br - Sociedade de Usu�rios Java da Sucesu-SP
>d�vidas mais comuns: http://www.soujava.org.br/faq.htm
>regras da lista: http://www.soujava.org.br/regras.htm
>historico: http://www.mail-archive.com/java-list%40soujava.org.br
>para sair da lista: envie email para [EMAIL PROTECTED]
>-------------------------------------------------------------------------
>
>
>
------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br - Sociedade de Usu�rios Java da Sucesu-SP
d�vidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------