Problema chamada de procedure no Java

2 respostas
rvsilvabh

O retorno da procedure é um arraylist com duas posições, não sei qual tipo utilizar no Java.

O código abaixo é a chamada de uma Procedure.

CallableStatement cstmt = s.connection().prepareCall(" { call sgeracatalogopessoafisica(?,?,?,?,?,?) } ");

cstmt.setInt(1, numeroCRM);

cstmt.setString(2, null);

cstmt.setString(3, null);

cstmt.setString(4, null);

cstmt.setString(5, null);

cstmt.registerOutParameter(6, Types.ARRAY);

cstmt.executeUpdate();

O último parâmetro que é o retorno da procedure é do tipo abaixo:

CREATE OR REPLACE TYPE rCatalogo as object
(cod_tipo_registro varchar2(100),
dsc_registro varchar2(200))

Está dando o erro:

ORA-06550: line 1, column 7:

PLS-00306: wrong number or types of arguments in call to ‘SGERACATALOGOPESSOAFISICA’

ORA-06550: line 1, column 7:

PL/SQL: Statement ignored

O que fazer?

2 Respostas

T

Para ajudar o pessoal, poderia postar também o cabeçalho da procedure em PL/SQL?

brunaspontes

E se vc usar o OracleTypes.CURSOR

Tb acho q na chamada da sua procedure vc precisa colocar o nome da sua package.

Criado 15 de julho de 2008
Ultima resposta 15 de jul. de 2008
Respostas 2
Participantes 3