Italian community of Lazarus and Free Pascal

Programmazione => Databases => Topic aperto da: Avogadro - Dicembre 20, 2018, 03:47:35 am

Titolo: Blob field in Sqlite
Inserito da: Avogadro - Dicembre 20, 2018, 03:47:35 am
Ciao a tutti,

ho necessità di usare i blob field in un date base sqlite . Nulla di che , devo solo archiviare dei pdf.

Come si fa ad "inserire" nel data base un file pdf  (o un file grafico tipo jepg o pgn)  e poi a scaricarlo ?

Ho cercato in giro sul web ma non ho trovato granchè . Per semplicità sto usando Zeoslib, ma nulla vieta approcci alternativi.

Grazie anticipate a chi potrà dare un suggerimento su come fare.

Cordialità.
Titolo: Re:Blob field in Sqlite
Inserito da: xinyiman - Dicembre 20, 2018, 08:09:34 am
Questa soluzione l'hai già provata?

https://forums.devart.com/viewtopic.php?t=32586
Titolo: Re:Blob field in Sqlite
Inserito da: xinyiman - Dicembre 20, 2018, 08:10:42 am
Altrimenti puoi sempre trasformare il file in una stringa base64 (con aumento di spazio occupato su disco) e inserirla dentro un campo text.
Titolo: Re:Blob field in Sqlite
Inserito da: Stilgar - Dicembre 20, 2018, 10:33:37 am
La trasformazione del dato binario in base64 non è proprio il massimo.Il db gestisce binario e testo, in linea di principio, in modo diverso. O è meglio pensarla in questo modo ;)I campi blob o text, permettono la serializzazione. Quindi puoi leggere il PDF (che è un file di testo con valori binari nel caso di immagini), come un file stream e scriverlo come se fosse uno stream normale. Altra cosa se devi separare il PDF in pagine, meglio appoggiarsi ad un parser già fatto e testato.
Fai la post e la commit sul db come un qualsiasi altro tipo di inserimento ;)
Stilgar
Titolo: Re:Blob field in Sqlite
Inserito da: Avogadro - Dicembre 22, 2018, 05:55:56 pm
Grazie per le risposte

Vedo cosa riesco a fare.

Con l'occasione auguri a tutti.