Кстати, вот как сделано в UIB

  procedure TSQLResult.ReadBlob(const Index: Word; Stream: TStream);
  var BlobData: PBlobData;
  begin
    CheckRange(Index);
    if not FFetchBlobs then
      raise Exception.Create(EUIB_FETCHBLOBNOTSET);
    BlobData := GetDataQuadOffset(Index);
    Stream.Seek(0, 0);
    Stream.Write(BlobData.Buffer^, BlobData.Size);
    Stream.Seek(0, 0);
  end;

Тоже завалится, да?

Ответить