Article View: es.comp.lenguajes.java
Article #25629JDBC, objetos y llamadas a procedimientos
From: Alvaro Fuentes
Date: Fri, 12 Mar 1999 00:00
Date: Fri, 12 Mar 1999 00:00
38 lines
1663 bytes
1663 bytes
Tengo un prodedimiento almacenado, insertarnumero, cuyo par�metro es un
TABLE OF NUMBER(x,y) en Oracle 8.0.4. La forma de hacerlo con el driver
Thin de oracle ser�a algo como:
double pp[] = new double[2];
pp[0] = 1;
pp[1] = 2;
...
CallableStatement call = conexion.prepareCall("{call
insertarnumero(?)}");
call.setObject(1,pp, Types.OTHER);
call.execute()
Aqu� siempre salta una SQLException, "Object type not found". Creo que
es porque el driver Thin de Oracle no tiene soporte para objetos. �Es
esto cierto?
�C�mo podr�a hacerse sin cambiar el procedimiento almacenado?
Por otra parte, con el driver Oci8 de oracle, que s� soporta objetos,
intento lo siguiente:
CallableStatement llamador = con.prepareCall("{call
insertarNumero(?)}");
Object pp[] = new Object[2];
pp[0] = new Integer(0);
pp[1] = new Integer(1);
StructDescriptor array =
StructDescriptor.createDescriptor("VECTOR",con);
STRUCT parametros = new STRUCT(array, con, pp);
llamador.setObject(1, pp);
llamador.execute();
Pero esto tambi�n me da la misma excepci�n. Alguien conoce el motivo?
Gracias por adelantado.
Hasta luego !
Technical Details
Message-ID:
<36E90CD6.3155E01F@tissat.es>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailShow Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII X-Google-Thread: 1116f3,819842d8aa58e292,start X-Google-Attributes: gid1116f3,public From: Alvaro Fuentes <afuentes@tissat.es> Subject: JDBC, objetos y llamadas a procedimientos Date: 1999/03/12 Message-ID: <36E90CD6.3155E01F@tissat.es> X-Deja-AN: 454178714 Content-Transfer-Encoding: 8bit X-Accept-Language: es Content-Type: text/plain; charset=iso-8859-1 Organization: Telefonica Transmision de Datos Mime-Version: 1.0 Newsgroups: es.comp.lenguajes.java