Pregunta

Estoy escribiendo un programa JAVA usando JDBC para la conectividad de la base de datos, estoy llamando a un procedimiento almacenado que devuelve el CURSOR DE REF DE ORACLE. ¿Hay alguna manera de poder manejar eso sin importar PAQUETES ORACLE?

¿Fue útil?

Solución

Creo que intenté hacer esto hace un tiempo y me di por vencido (supongo que podrías averiguar qué valor int es OracleTypes.REF_CURSOR y luego usar ese valor int, pero eso es un truco).Si tiene paciencia, puede definir un tipo de registro (u objeto) y definir el cursor como un cursor con tipo, ya que se puede convertir usando la tabla a un valor que se puede seleccionar como las tablas normales, es decir.

select * from table( sp_returning( ? ) )

Hice una búsqueda rápida en Google sobre el cursor de referencia y jdbc y parece que podría ser una extensión de Oracle que explicaría por qué no existe una forma estándar de acceder a los datos.

Otros consejos

Haciendo

select * from table( sp_returning( ? ) )

es más lento que devolver un cursor de referencia.

Puedo usar un cursor de referencia en combinación con C#, ¿por qué no puedes hacerlo con Java?Estoy seguro de que hay muchos ejemplos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top