Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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.009 c
1-2062
Zilog
2004-01-19 12:30
2004.02.02
Как сделать журнал событий, типа того что в w2k?


1-2172
WG
2004-01-20 09:59
2004.02.02
Как заставить элементы изменять размер вместе с формой ?


1-2192
Boroda Oleg
2004-01-21 10:20
2004.02.02
Как подключится к сетевому рессурсу и стащить (если нужно) файл


14-2358
kdoe
2004-01-10 15:08
2004.02.02
Как добавить программу в автозагрузку виндоса ХР?


3-2028
СержК
2004-01-06 13:25
2004.02.02
Медленно работает





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский