Salve a tutti. Ho un grosso problema con un'applicazione che si appoggia a Access/SQL, vi spiego il problema dall'inizio.
Un mio cliente utilizzava fino a poco tempo fa un db Access, con alcune tabella, che utilizzava per archiviare i propri prodotti (dati, foto, ecc...).
Un bel giorno mi chiede di utilizzare SQL: non potendo migrare tutta la gestione su SQL, ho IMPORTATO I DATI IN SQL ed infine LINKATO LE TABELLE in ACCESS.
Per necessità ho creato un programmino in VB.Net che effettua gli inserimenti direttamente in SQL: il cliente visualizzerà i dati attraverso Access. Ho scoperto però delle forti incompatibilità tra Access e SQL NELLA GESTIONE DELLE IMMAGINI: infatti in access le immagini sono state archiviate in un Oggetto OLE. Le vecchie maschere riescono a visualizzare correttamente le immagini vecchie: se effettuo un inserimento in SQL di un'immagine, utilizzando un binary stream per "convertire l'immagine", le maschere NON RIESCONO A VISUALIZZARE L'IMMAGINE APPENA INSERITA.
Come mai??? Cosa devo utilizzare per inserire le immagini ???
Vi ringrazio anticipatamente per l'aiuto.
Ciao a tutti ...
Theo
PS: vi posto anche il codice sorgente dell'inserimento:
//creazione stream dell'immagine
Dim fs As FileStream
fs = New FileStream(percorso, FileMode.Open, FileAccess.Read)
fs.Read(flussoarray, 0, fs.Length)
fs.Close()
//creazione query d'inserimento
Dim istruzionesql As String = "Insert into miepresentazioni(miofile) values(@documento)"
Dim objcomm As OleDbCommand
objcomm = New OleDbCommand(istruzionesql, obj)
Dim parametro As OleDbParameter
parametro = New OleDbParameter
parametro.ParameterName = "@documento"
parametro.DbType = DbType.Binary
parametro.Value = flussoarray
objcomm.Parameters.Add(parametro)
objcomm.ExecuteNonQuery()
obj.Close()
Sottolineo anche che l'inserimento VA A BUON FINE !!!