🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.lenguajes.java
Article #25629

JDBC, objetos y llamadas a procedimientos

#25629
From: Alvaro Fuentes
Date: Fri, 12 Mar 1999 00:00
38 lines
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-mail

Show 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