![]() |
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. |
|
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 04:47:54. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi