Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Запись/чтение BLOB полей


Alek Aaz ©   (2003-01-05 06:24:00) 

Вообще кто как это делает?
Пожалуйста, примеры с кодом. Может потом в FAQ запихнуть. Общие ответы типа "Смотри LoadFromStream и SaveToStream" не принимаются.


shel   (2003-01-05 19:38:00) [1]

Спасибо, разобрался!


Delirium^.Tremens   (2003-01-05 16:24:00) [2]


> Я пытаюсь так, но не проходит


В какое место не проходит, конкретно?


> Что это такое Query1Image.LoadFromStream(FS)?


Если на TQuery сделать dblclick, появится окошко, в котором, при нажатии правой кн. мыши (или Ctrl+F), можно создать объекты Fields Collection. Объект, соответствующий полю Image таблицы, по умолчанию буден назван в честь мамы и папы (Query1 и Field Image). Если это будет поле класса TBlobField или типа того, у него будут методы LoadFrom... SaveTo...
и т.д. и т.п.


shel   (2003-01-05 16:09:00) [3]

Я пытаюсь так, но не проходит.
Может проблема в том, что я с базами только 3-е суток работал?

Что это такое Query1Images.LoadFromStream(FS)?

procedure TForm1.Button3Click(Sender: TObject);
Var
MS: TMemoryStream;
begin
MS := TMemoryStream.Create;
try
(ADOTable1.FieldByName("Image") as TGraphicField).SaveToStream(MS);
Image1.Picture.Bitmap.LoadFromStream(MS);
finally
MS.Free;
end;
end;


Lola   (2003-01-05 10:31:00) [4]

А насчет FAQ предложение хорошее, учитывая частоту появления этого вопроса.


Дмитрий К.К.   (2003-01-05 07:41:00) [5]

СлабО F1 нажать?

TBlobField.LoadFromStream

Loads a BLOB from a stream into the field.

procedure LoadFromStream(Stream: TStream);

Description

Use LoadFromStream to copy the contents of a stream into the BLOB field. Specify the stream from which the field’s value is copied as the value of the LoadFromStream parameter.

var

FS: TFileStream;
begin
if not (Query1.State in [dsInsert, dsEdit]) then Query1.Insert;
FS := TFileStream.Create("c:\Windows\Winlogo.bmp", fmOpenRead);
try
Query1Images.LoadFromStream(FS);
finally
FS.Free;
end;
Query1.Post;
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо