Hallo,
folgendes Problem:
ich schreibe eine Stringlist in ein Blobstream, speicher das in der Datenbank und will es an anderer Stelle wieder auslesen. Allerdings bekomme ich beim Auslesen nur ein Count von 1 und von diesem einen String nur das erste Zeichen.
Der Code dazu:
Blob-Stream schreiben:
...
sl : TStringList;
slStream : TStream;
...
sl := Tstringlist.Create;
...
slStream := CreateBlobStream(FieldByName('BLOB'),bmWrite);
sl.SaveToStream(slStream);
slStream.Position := 0;
slStream.Free;
BLOB-Stream lesen:
...
strList : TStringList;
BLOB_STREAM : TStream;
...
strlist := TstringList.Create();
...
BLOB_Stream := AQ.CreateBlobStream(AQ.FieldByName('BLOB'), bmRead) ;
...
sl_c := strList.Count;
if sL_C > 0 then
begin
for y := 0 to sl_c - 1 do
begin
str := str + strList.Strings[y] + ', ';
end;
Weiß jemand was ich falsch mache???
Vielen Dank!
Lieschen
folgendes Problem:
ich schreibe eine Stringlist in ein Blobstream, speicher das in der Datenbank und will es an anderer Stelle wieder auslesen. Allerdings bekomme ich beim Auslesen nur ein Count von 1 und von diesem einen String nur das erste Zeichen.
Der Code dazu:
Blob-Stream schreiben:
...
sl : TStringList;
slStream : TStream;
...
sl := Tstringlist.Create;
...
slStream := CreateBlobStream(FieldByName('BLOB'),bmWrite);
sl.SaveToStream(slStream);
slStream.Position := 0;
slStream.Free;
BLOB-Stream lesen:
...
strList : TStringList;
BLOB_STREAM : TStream;
...
strlist := TstringList.Create();
...
BLOB_Stream := AQ.CreateBlobStream(AQ.FieldByName('BLOB'), bmRead) ;
...
sl_c := strList.Count;
if sL_C > 0 then
begin
for y := 0 to sl_c - 1 do
begin
str := str + strList.Strings[y] + ', ';
end;
Weiß jemand was ich falsch mache???
Vielen Dank!
Lieschen
Comment