Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [JAVA] Problema nell'inserimento file in campo blob

    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:

    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();
    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.
    Io ho visto cose ke vuoi umani non potete neanke immaginare, ma solo xkè il cucchiaio non esiste ed io sono il vostro incubo peggiore. Perciò se da grandi poteri derivano grandi responsabilità, allora state certi ke dorme più lo sveglio ke il dormiente.

  2. #2
    Ivan Venuti
    Vuoi scaricare alcuni articoli sulla programmazione, pubblicati su riviste di informatica? Visita http://ivenuti.altervista.org/articoli.htm. Se vuoi imparare JavaScript leggi il mio libro: http://www.fag.it/scheda.aspx?ID=21754 !

  3. #3
    Grazie per la risposta.
    Il link riporta in pratica il codice che ho già provato (quello dell'altro topic), che nel frattempo ho testato su MySql, constatando in effetti che funziona, almeno in quel contesto. Il link mi conferma quindi che tale codice dovrebbe funzionare anche su DB2, il che mi risolve un problema successivo a quello di Oracle. Io intanto, anche per avere sicurezza della cosa, ho testato fuori dall'applicazione il codice sia su Oracle che su MySql (come dicevo in precedenza), notanto che su MySql il codice funzione ed il Blob viene riempito, mentre su Oracle non saltano fuori errori ma il Blob non subisce modifiche. Devo supporre che sia un problema di compatibilità?
    Io ho visto cose ke vuoi umani non potete neanke immaginare, ma solo xkè il cucchiaio non esiste ed io sono il vostro incubo peggiore. Perciò se da grandi poteri derivano grandi responsabilità, allora state certi ke dorme più lo sveglio ke il dormiente.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.