Autore Topic: Inserire una PictureBox.Picture in un campo BLOB di MySql e viceversa  (Letto 646 volte)

Offline clabe69

  • Gambero
  • **
  • Post: 50
    • Mostra profilo
Salve; L'oggetto mi sembra abbastanza esplicativo.

Spiego: dovrei caricare un'immagine in una PictureBox (e fin quì ci sono), per poi salvarla in un DB MySql; quando riapro la form dovrei rimettere nella PictureBox l'immagine salvata nel DB.
Questo, ora lo faccio, salvando nel DB la path dell'immagine, in modo da ricaricarla ad ogni visualizzazione, ma così sono costretto ad avere una cartella contenente tutte le immagini che mi servono, ed essendo il DB di un magazzino, può diventare molto grande, ed avere un'infinità di immagini con conseguente spreco di risorse.
Avendo scoperto che c'è la possibilita di salvarle direttamente nel DB, in un campo BLOB................................ Ma non ci sono riuscito!!.......... Qualcuno sà come si fà??

Grazie.


Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: Inserire una PictureBox.Picture in un campo BLOB di MySql e viceversa
« Risposta #1 il: 18 Ottobre 2012, 10:42:28 »
Credo che il risultato sia lo stesso, non credi?

Salvarli su filesystem o su database, secondo te qual'è la differenza?

Anche nei grandi progetti si usa il metodo di salvare i documenti in un'apposita struttura di cartelle, spesso locate su server separati, accessibili solo dal db server.

Ad ogni modo, non puoi salvare la Picture, ma puoi salvare la Image che è contenuta nella Picture.
Se vuoi salvare invece i dati interni della Picture, allora il discorso è un bel pò diverso, e un pò più complesso.
Nel mio PgDesigner3, uso appunto alcune funzioni che ho creato appunto per salvare in un file xml il contenuto di una Image, per poi ricaricarle in un Image, al caricamento del file xml. Questa logica usa la proprietà Data di Image, i Byte Pointer, e funzioni di conversione in Ascii per poter salvare/recuperare i byte in formato leggibile per l'xml.