Hallo!
Ich erzeuge mir eine ganz simple SQlite-
DB zur Laufzeit:
Code:
CREATE TABLE daten (
id INTEGER NOT NULL
PRIMARY KEY AUTOINCREMENT,
"bintest" BLOB NOT NULL
);
Diese Datenbank fülle ich sequentiell mit Filestreams:
Delphi-Quellcode:
for sFilename
in Filenames
do begin
Query.FieldByName('
bintest').DataType := ftBlob;
Query.FieldByName('
bintest').AsStream := TFileStream.Create(sFileName, fmOpenRead);
end;
Also streng nach
Handbuch. Das ganze ist natürlich umfangreicher, aber im Prinzip kann ich das auf dieses Szenario runterbrechen. Die Dateien in FileNames sind alle recht klein (< 1 MB), dafür zahlreich. Während die Schleife läuft, kann man parallel im Explorer beobachten, wie die Datenbankdatei größer wird. Bei ca. 1,2 bis 1,4 GB bricht das Ganze jedoch ohne weitere
Exception ab.
Zuerst hab ich das auf das Dateisystem geschoben, weil der Zielpfad auf einer FAT32-Partition lag. Also anderen Zielpfad auf eine NTFS-Partition genommen. Selbes Problem. Der Abbruch erfolgt aber nicht exakt beim selben Dateieintrag, sondern wie gesagt dynamisch zwischen 1,2 und 1,4 GB. Laut
Handbuch sollte aber ungleich mehr gehen mit SQlite und FireDAC.
Tja, und nu? Ich wäre für Hinweise dankbar.
Grüße
Cody