Salve a tutti,
chiedo scusa se ripropongo tale argomento ma ho la necessità di risolvere il problema ed allo stato attuale delle cose di soluzioni all'orizzonte non ne vedo nemmeno una. Vi spiego il problema. Devo caricare in un campo blob del db dei file pdf, problematica che comunque avevo risolto precedentemente nel caso in cui il db di destinazione fosse Oracle. Con la possibilità di avere però db di destinazione differenti, la soluzione trovata (che faceva uso della funzione empty_blob() proprietaria del pl/sql di Oracle e con la gestione dei campi blob tramite i puntatori delle select FOR UPDATE) non è più valida in quanto non SQL Standard. Ho effettuato numerose ricerche con altrettanti tentativi, ma niente di fatto. Ho anche provato la soluzione suggerita in un topic presente sul forum (link del topic ), questa in pratica:
Ma non sembra funzionare, ovvero non da errore, non lancia eccezioni, ma non fa nemmeno il suo dovere. L'ho testata anche fuori dall'applicazione in un semplice main, creando la connessione al db ed effettuando quelle poche istruzioni, ma niente di fatto. Sbaglio qualcosa? C'è qualche particolare incompatibilità dell'operazione in questione con Oracle di cui ignoro l'esistenza? Aggiungendo che molto probabilmente l'altro db in questione sarà di tipo DB2 e che al momento non ho la possibilità di testarlo direttamente, sarei molto grato se qualcuno potesse darmi un aiuto, o magari un esempio, che possa illuminarmi sulla faccenda. Grazie in anticipo a tutti.codice:File file = new File("immagine.jpg"); InputStream fin = new java.io.FileInputStream(file); int fileLength = (int)file.length(); PreparedStatement pstmt = conn.prepareStatement("INSERT INTO IMAGES (NAME, IMG) "+"VALUES (?, ?)"); pstmt.setString(1, file.getName()); pstmt.setBinaryStream (2, fin, fileLength); pstmt.executeUpdate();



Rispondi quotando