Форум: "Базы";
Текущий архив: 2004.02.02;
Скачать: [xml.tar.bz2];
ВнизПроблема с чтением из BLOB поля в стрим... Найти похожие ветки
← →
HolyMan (2004-01-04 00:20) [0]Привет всем!
Вот пример моего кода где я пытаюсь занести значение BLOB поля в стрим по выдает ошибку
var
FreeStream : TBLOBStream;
begin
FreeStream := ibdsDS.CreateBlobStream(ibdsDS.FieldByName("DSFILE"),bmReadWrite);
ошибка в выделенной строке "Не соответствие типов TBLOBStream и TStream"
Помогите с решением этой проблемы...
заранее благодарен...
← →
XanderMan (2004-01-04 11:25) [1]Попробуй так:
var
FreeStream : TStream;
← →
Jibskeart (2004-01-04 12:16) [2]или так
FreeStream := TBlobStream(ibdsDS.CreateBlobStream(ibdsDS.FieldByName("DSFILE"),bmReadWrite));
← →
HolyMan (2004-01-05 00:02) [3]поменял тип и все стало нормально...только появился еще один вопрос, вот я создал стрим в котром я так понял храняться все данные из BLOB поля, а как мне теперь извлечь данные из определенной записи или может я что то не понимаю...обьясните пожалуста...
← →
Dok_3D (2004-01-05 00:20) [4]var strFile : TFileStream;
strTemp : TStream;
begin
fsFile := TFileStream.Create("file_name", fmCreate);
strTemp := dsObj.CreateBlobStream(Query.FieldByName("FIELD_NAME"), bmRead);
fsFile.CopyFrom(strTemp,0); // Ну вот, теперь свой блоб в файле
strTemp.Free;
fsrFile.Free
end;
← →
Dok_3D (2004-01-05 00:24) [5]Мелкая ошибочка, еще раз:
var strFile : TFileStream;
strTemp : TStream;
begin
fsFile := TFileStream.Create("file_name", fmCreate);
strTemp := dsObj.CreateBlobStream(dsObj.FieldByName("FIELD_NAME"), bmRead);
fsFile.CopyFrom(strTemp,0); // Ну вот, теперь твой блоб в файле
strTemp.Free;
fsrFile.Free
end;
← →
kaif (2004-01-05 02:18) [6]HolyMan © (05.01.04 00:02) [3]
поменял тип и все стало нормально...только появился еще один вопрос, вот я создал стрим в котром я так понял храняться все данные из BLOB поля, а как мне теперь извлечь данные из определенной записи или может я что то не понимаю...обьясните пожалуста...
Ну почему же? Ты имеешь теперь данные из BLOB-поля, относящиеся к текущей записи в наборе данных. Перейди на следующую запись
ibdsDS.Next
и опять считай данные в stream. Ты получишь BLOB-данные, относящиеся к другой записи. Если у тебя в BLOB-поле записаны картинки (такой пример есть в DBDEMO к Delphi), то каждая картинка соответствует своей записи.
← →
HolyMan (2004-01-05 22:56) [7]Спасибо. Очень помогли...
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.02.02;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.01 c