и снова о бинарных данных

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

и снова о бинарных данных

Сообщение grigoreo » 15.06.2010 16:32:25

Уважаемые форумчане кто как делает сей момент, хочу хранить небольшие пиктограмки в базе попробовал потоки частично не работает подскажите где накосячил...

вот так сохраняю в поле нужной строки и тут нареканий нет...
Код: Выделить всё
procedure TForm1.SpeedButton1Click(Sender: TObject);
var s1:TMemoryStream;
begin
  s1:=TMemoryStream.Create;
  SpeedButton1.Glyph.SaveToStream(s1);
  pgQ1.ParamByName('par1').LoadFromStream(s1,ftBlob);
  pgQ1.SQL.Text:='update _type set pic=:par1 where id='+pgQ.Fields[0].AsString;pgQ1.ExecSQL;
end;


вот тут пытаюсь загнать в объект TImage(по анологии с верхним) и не работает
Код: Выделить всё
procedure TForm1.DBGrid1DblClick(Sender: TObject);
var s1:TMemoryStream;
begin
  s1:=TMemoryStream.Create;
  TBlobField(pgQ.FieldByName('pic')).SaveToStream(s1);
  Image1.Picture.Bitmap.LoadFromStream(s1);
end;


стоит заместо SaveToStream поставить SaveToFile и по анологии LoadFromStream на LoadFromFile картинка показывается добросовестно а через стрим пусто...
где закавыка?
Аватара пользователя
grigoreo
постоялец
 
Сообщения: 195
Зарегистрирован: 10.03.2009 15:43:43
Откуда: С нашей Раши

Re: и снова о бинарных данных

Сообщение Sergei I. Gorelkin » 15.06.2010 16:48:43

Между записью и сохранением нужно делать Stream.Seek(0,soFromBeginning).
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
 
Сообщения: 1407
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Re: и снова о бинарных данных

Сообщение grigoreo » 15.06.2010 16:52:17

Sergei I. Gorelkin писал(а):Между записью и сохранением нужно делать Stream.Seek(0,soFromBeginning).


Огромное спасибо , а то голову сломал(чем то по сути похоже на работу с файлами только в памяти)) )
Аватара пользователя
grigoreo
постоялец
 
Сообщения: 195
Зарегистрирован: 10.03.2009 15:43:43
Откуда: С нашей Раши

Re: и снова о бинарных данных

Сообщение MaratIsk » 09.07.2010 13:59:33

а откуда у pgQ1 появился параметр ParamByName('par1'), если SQL.Text присвоен потом ?!
MaratIsk
постоялец
 
Сообщения: 121
Зарегистрирован: 20.08.2009 18:15:20


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 233

Рейтинг@Mail.ru
cron