Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.10.24;
Скачать: [xml.tar.bz2];

Вниз

картинки в Oracle9i   Найти похожие ветки 

 
UncleRu   (2002-10-02 20:40) [0]

Здраствуйте, профессионалы!
Использую для связи с Oracle9i DOA (Direct Oracle Access) и стоит задача записывания BLOB-полей (фотографий). Подскажите, плиз, как можно осуществлять запись и считывание картинок в базу (из базы) Oracle9i не используя BDE и промежуточных файлов, а используя потоки (TStream) и DOA. Буду благодарен за готовый пример.


 
fnatali   (2002-10-03 06:24) [1]

В поле типа LONG RAW.
var
bit : Tbitmap;
MS : TMemoryStream;
bit:=Tbitmap.Create;

// Чтение
MS := TMemoryStream.Create;
TBlobField(OCIQuery1.FieldByName("foto")).SaveToStream(MS);
MS.Seek(soFromBeginning, 0);
if ms.Size>0 then
begin
bit.LoadFromStream(ms);
end;
...
bit.free;
// Занесение
ms := TMemoryStream.Create;
bit.SaveToStream(ms);
with OCIQuery1 do begin
active:=false;
sql.clear;
sql.add("update vid set foto=:par where id=:par1");
parambyname("par1").asinteger:=nom;
ParamByName("par").DataType := ftBlob;
ParamByName("par").ParamType := ptInput;
ParamByName("par").LoadFromStream(ms,ftBLOB);
execsql;
end;
ms.free;


 
UncleRu   (2002-10-04 00:26) [2]

Спасибо за совет. Но что-то я не совсем просёк как всё это через Oracle Call Interface реализовывать. Откуда эти OCIQuery брать? Может кто подскажет как всю эту процедуру через "стандартный" TLobLocator сделать?


 
fnatali   (2002-10-04 06:17) [3]

OCIQuery - это компонент из библиотеки NCOCI для доступа к Oracle. Если ты пользуешься DOA, то используй оттуда аналогичный. Здесь не принципиален вид DataSet-а, IMHO.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.10.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.009 c
1-78366
pirat
2002-10-14 21:43
2002.10.24
создание цифрового TEdit


6-78561
Agor
2002-08-20 14:20
2002.10.24
Кодировка и TidMessage


1-78395
Жорик
2002-10-14 10:37
2002.10.24
Работа со шрифтами


1-78381
ruslan_as
2002-10-15 09:46
2002.10.24
Найти решение


1-78327
Mav
2002-10-14 13:05
2002.10.24
Help OLE.





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский