Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   JAVA (https://www.clubdelphi.com/foros/forumdisplay.php?f=16)
-   -   Insertar un array en un procedimiento de Oracle con JDBC (https://www.clubdelphi.com/foros/showthread.php?t=10340)

samuvk 17-05-2004 16:33:34

Insertar un array en un procedimiento de Oracle con JDBC
 
Hola de nuevo y buenas tardes:

Como habreis podido observar por mis problemas estoy trabajando con JDBC y tengo
bastantes incovenientes con el tema de los tipos de datos que me traen loco.

Tengo un pequeño problema. Necesito insertar un array en un procedimiento de
Oracle a través del JDBC. He realizado el siguiente código:


String aString="hola";
//Creo el array
String [] tabla= new String[100];


//Introduzco 2 valores en el array
tabla[1]="palabra1";
tabla[2]="palabra2";


CallableStatement cstmt = null;
try
{
//Creo la llamada al procedimiento y le paso los 2 parametros de entrada en (?,?)
cstmt = con.prepareCall("begin usuario.paquete.procedimiento (?,?); end;");
//Inserto la palabra hola en el primer parametro de entrada
cstmt.setString(1, aString);
//Ahora quiero introducir el array Tabla en el segundo parametro de entrada el array
//pero si lo pongo asi no cuela por que no existe setArray
//cstmt.setArray(2, tabla);
//Con lo cual lo intento de la siguiente forma pero me da el siguiente error: Tipo de
// columna no valido
cstmt.setObject(2, tabla);
cstmt.execute();
Catch (SQLException ejecucion)
{System.out.println("Error: " + ejecucion.getMessage());}



La llamada al paquete siguiente desde oracle funciona correctamente:

BEGIN
v_tablain(1) := 'palabra1';
v_tablain(2) := 'palabra2';
v_numfilas := 2;
paquete.porcedimiento ('palabra0',v_tablain);
END;
/



Me gustaria poder realizar la misma llamada desde Java con JDBC, pero no entiendo por que no
me funciona tal y como lo he hecho.


Muchas Gracias tanto si podeis como sino ayudarme.

santana 17-05-2004 17:49:19

Esto te va a interesar.

Echale un vistazo.

Un saludo.

santana 17-05-2004 17:59:48

Y esto lo tienes en java.sun.com
Y esto tambien.

Ahí es donde más información podrás encontrar. Yo siempre la tengo a mano ;).


La franja horaria es GMT +2. Ahora son las 19:39:49.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi