![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Добавление картинки в базу данных [Paradox]
dream © (2004-11-30 14:30:00)Подскажите как запихать картинку в базу . ? Парадокс или acess
то совсем запарился уже :(
sniknik (2004-12-01 11:11:00) [1]как это не хочет? в блоб можно хранить(и сохранять соответственно) любые данные.
а вот стандартные TDBImage работают только с BMP (вернее с другими я и не пытался его заставить работать ;), делай свою обработку для JPG-а.
dream (2004-12-01 10:52:00) [2]Спасибо , получилось !
Если можно ещё один вопрос : почему JPG не хочет сохраняться в базу ? работает только на BMP
Александр Иванов (2004-12-01 10:07:00) [3]См [4]
Александр Иванов (2004-12-01 09:46:00) [4]Тип выберется автоматом.
dream (2004-12-01 09:46:00) [5]Делаю так :
var Stream: TBlobStream;
fs:TFileStream;
begin
if openpicturedialog1.execute then
begin
ADOTable1.Edit;
Stream := TBlobStream.Create((ADOTable1.FieldByName('ImageSmall') as TBlobField),
bmReadWrite);
FS:=TFileStream.Create(openpicturedialog1.FileName,fmOpenRead);
Stream.CopyFrom(fs,fs.size);
Stream.Free;
fs.Free;
ADOTable1.Post;
end;
При создании Stream выдаёт ошибку : invalid class typecast
Александр Иванов (2004-12-01 09:45:00) [6]Это поле, типа TBlobField. Добавляется в Field Editor'e.
dream (2004-12-01 09:35:00) [7]что означает Table1Notes ? не могу понять что туда нужно вставить :(
dream (2004-11-30 15:02:00) [8]Спасибо
Александр Иванов (2004-11-30 14:46:00) [9]procedure TForm1.Button1Click(Sender: TObject);
var
Stream1: TBlobStream;
Stream2: TStream;
begin
Stream1 := TBlobStream.Create(Table1Notes, bmRead);
try
ClientDataSet1.Edit;
{ here’s a different way to create a blob stream }
Stream2 := ClientDataSet1.CreateBlobStream(ClientDataSet1.FieldByName('Remarks'), bmReadWrite);
try
Stream2.CopyFrom(Stream1, Stream1.Size);
ClientDataSet1.Post;
finally
Stream2.Free;
end;
finally
Stream1.Free;
end;
end;