Oracle
 sql >> Database >  >> RDS >> Oracle

Lettura di un BLOB utilizzando JDBC Spring senza un set di risultati

L'API JDBC Spring (Gestione Lob predefinito e OracleLobHandler ) richiedono un ResultSet oggetto per i relativi metodi BLOB.

Devi convertire il tuo GET_IMAGE_DATA procedura in una funzione :

FUNCTION ATTACHMENT_BLOB_GET(IN_IMAGE_TYPE IN IMAGES.IMAGE_TYPE%TYPE)
RETURN SYS_REFCURSOR AS

results_cursor SYS_REFCURSOR;

BEGIN

  OPEN results_cursor FOR
     SELECT t.image_data 
       FROM IMAGES t
      WHERE t.image_type = IN_IMAGE_TYPE;

  RETURN results_cursor;

END;

I parametri OUT sono sempre utili per un po' di dolore, in particolare i BLOB.