Ja.. de Blob heeft wel degelijk een waarde (zie de plaatjes in de WebDB applicatie) Ik heb via deze methode alles naar files proberen te dumpen, dit resulteerde in 100 files van 0kb
Code:
procedure TMainForm.ReadBlob;
const
c_sel = 'select pictno,bmp from travellog';
c_bufferSize = 100;
var
cmd: bdpCommand;
rdr: bdpDataReader;
barray: array[0..c_bufferSize-1] of byte;
bytesRead: Int64;
idx: Integer;
fStream : FileStream;
fName: String;
bWriter: BinaryWriter;
begin
cmd := bdpCommand.Create(c_sel, bdpConn);
if bdpConn.State = ConnectionState.Closed then bdpConn.Open;
try
rdr := cmd.ExecuteReader(CommandBehavior.SequentialAccess);
while rdr.Read do
begin
fName := 'bitmap_'+ rdr['Pictno'].ToString +'.bmp';
fStream := FileStream.Create('C:\Inetpub\wwwroot\images\' + fName,
FileMode.OpenOrCreate,
FileAccess.Write);
try
bWriter := BinaryWriter.Create(fStream);
try
idx := 0;
repeat
bytesRead := rdr.GetBytes(1, idx, barray, 0, c_bufferSize);
bWriter.Write(barray, 0, bytesRead);
idx := idx+c_bufferSize;
until bytesRead < c_buffersize;
finally
bWriter.Close;
bWriter.Free;
end;
finally
fStream.Close;
fStream.Free
end;
end;
finally
bdpconn.Close;
cmd.Free;
end;
end;
Bookmarks