Sources
Delphi Russian Knowledge Base
DRKB - база знаний по Дельфи в рунете, составленная Виталием Невзоровым

Сохранение и чтение файлов в BLOB-полях

01.01.2007

// Сохраняем
procedure TForm1.Button1Click(Sender: TObject); 
var 
  blob: TBlobStream; 
begin 
  blob := yourDataset.CreateBlobStream(yourDataset.FieldByName('YOUR_BLOB'), bmWrite); 
  try 
    blob.Seek(0, soFromBeginning); 
    fs := TFileStream.Create('c:\your_name.doc', fmOpenRead or 
      fmShareDenyWrite); 
    try 
      blob.CopyFrom(fs, fs.Size) 
    finally 
      fs.Free 
    end; 
  finally 
    blob.Free 
  end; 
end;

// Загружаем
procedure TForm1.Button1Click(Sender: TObject); 
var 
  blob: TBlobStream; 
begin 
  blob := yourDataset.CreateBlobStream(yourDataset.FieldByName('YOUR_BLOB'), bmRead); 
  try 
    blob.Seek(0, soFromBeginning); 

    with TFileStream.Create('c:\your_name.doc', fmCreate) do 
      try 
        CopyFrom(blob, blob.Size) 
      finally 
        Free 
      end; 
  finally 
    blob.Free 
  end; 
end;
Previous page:
Чтение OLE из BLOB-поля Paradox
Top:
DRKB
Next page:
Как определить реальный размер поля типа BLOB, которое сохранено в таблице?