07/12/2010, 07:01
|
| | | Fecha de Ingreso: agosto-2008 Ubicación: En internet
Mensajes: 2.511
Antigüedad: 16 años, 4 meses Puntos: 188 | |
Setear un CLOB sin usar la clase CLOB de Oracle Hola, me ha surgido cambiar en la base de datos un campo que hasta ahora era varchar2 por un CLOB.
Para obtener el CLOB y convertirlo a String para procesarlo en mi aplicación no tengo problemas usando el import de java.sql.Clob; (Interfaz)
Sin embargo, si quiero procesar un String, convertirlo a CLOB y hacer un setClob (para un insert o update), la única forma que he encontrado de hacerlo es ésta
// Código
CLOB v_clob = CLOB.createTemporary(conn,false,CLOB.DURATION_CALL );
CallableStament cs = conn.prepareCall("begin ClobPackage.insertClob(?); end;");
int x = v_clob.putString(1,p_clob_string);
cs.setClob(1,v_clob);
El problema que veo es que esto me obliga a importar la clase oracle.sql.CLOB; y además a incorporar la conexión al método que tenía para realizar los set del statement.
Me gustaría saber si hay alguna manera de parchear esto y conseguir hacer el set usando tan sólo la interfaz de java.sql.Clob.
Nota: probé a hacer el set del String utilizando directamente la interfaz sin instanciar, pero no he podido. ¿Necesita entonces a la fuerza que le proporcione un oracle.sql.CLOB?. |