Вниз
Скачать: CL | DM;

картинки в 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
3-78210
surkis
2002-10-04 11:58
2002.10.24
Помогите с плиз Access-овским паролем


3-78297
Cobalt
2002-10-03 12:00
2002.10.24
Модульная БД


3-78228
NewI
2002-10-02 04:55
2002.10.24
Делаю SQL запрос. Данные отображаются в DBGrid. Вопрос в


1-78459
kofman
2002-10-10 18:42
2002.10.24
Как получить иконку соотвующую расширению файла?


3-78254
Gaber
2002-10-02 10:04
2002.10.24
Как лучше строить БД




   Наверх