Форум: "Базы";
Текущий архив: 2003.10.02;
Скачать: [xml.tar.bz2];
ВнизКак записать Blob в файл Найти похожие ветки
← →
inwin (2003-09-11 14:43) [0]В таблице Table есть поле типа Blob. Как его содержимое записать в произвольный файл, т.е. типа Table.FieldByName("Blob").SaveToFile("...")?
← →
Reindeer Moss Eater (2003-09-11 14:46) [1]TBlobStream и его методы
← →
inwin (2003-09-11 14:51) [2]Делаю:
var
qry: TQuery;
begin
qry:=TQuery.Create(nil);
....
with qry do
begin
SQL.Add("SELECT BlobField FROM Table WHERE ...");
Open;
bs:=TBlobStream.Create(FieldByName("Blob"), bmRead); -
ругается "incompatible types TBlobField and TField". Делаем
bs:=TBlobStream.Create(TBlobField(FieldByName("Blob")), bmRead); - ошибка при выполнении
← →
Reindeer Moss Eater (2003-09-11 14:57) [3]bs:=TBlobStream.Create(FieldByName("Blob"), bmRead); -
ругается "incompatible types TBlobField and TField".
1.А приведение типов для кого существует?
2.TDataSet.CreateBlobField
← →
inwin (2003-09-11 15:02) [4]> Reindeer Moss Eater
А можно пример? Я еще не шибко все это умею...
← →
Reindeer Moss Eater (2003-09-11 15:03) [5]TBlobField(FieldByName("Blob"))
← →
Reindeer Moss Eater (2003-09-11 15:05) [6]CreateBlobStream(FieldByName("Blob"), bmRead)
← →
-= Demon =- (2003-09-11 15:07) [7]var
ss: TStream;
begin
ss:=qry.CreateBlobStream(FieldByName("BlobField"), bmReadWrite);
SetLength(Buf, ss.Size + 1);
ss.ReadBuffer(Buf[0], ss.Size);
with FieldByName("BlobField") do
begin
{$I-}
AssignFile(f, FileName);
Rewrite(f);
BlockWrite(f, Buf[0], High(Buf) + 1);
CloseFile(f);
{$I+}
end;
end;
← →
-= Demon =- (2003-09-11 15:08) [8]with FieldByName("BlobField") do
не нужно, забыл убрать :)
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.10.02;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.014 c