Хранение файлов в БД

 
0
 
Oracle
ava
Kesh | 27.12.2003, 19:19
Порекомендуйте, где можно почитать на тему хранения различных файлов (архивов, документов и др.) в БД.
БД - Oracle 9i

P.S. Если можно, с реализацией этого на Delphi///
Comments (12)
ava
Vit | 29.12.2003, 01:40 #
BLOB поля
ava
Kesh | 29.12.2003, 18:49 #
И чего с ними делать?..
ava
Kesh | 29.12.2003, 18:51 #
2 Vit: ты же хорошо разбираешься в Delphi, подкинь примерчик, как в БД Oracle в таблицу можно сохранить документ Word. Я использую Delphi+ODAC...

P.S. Заранее спасибо...
ava
Vit | 29.12.2003, 23:24 #
С оракл'ом не работал. Если теоретически рассуждать, то работа с BLOB полями есть в нашем FAQ. Большего я тебе сказать не могу.
ava
Kesh | 30.12.2003, 13:05 #
Ладно, все равно огромный тебе thancks...
ava
Paradox | 30.12.2003, 14:12 #
 IBSQL_DB.SQL.Text:='insert into UR_FORMS (REPFORM) values(:REPFORM)';
IBSQL_DB.ParamByName('REPFORM').LoadFromFile('C:\testfile.doc');
IBSQL_DB.ExecQuery;

IBSQL_DB - типа TIBQuery
ava
Paradox | 30.12.2003, 14:13 #
Естественно REPFORM в примере является BLOB полем
ava
Kesh | 30.12.2003, 16:31 #
2 Paradox Спасибочки, только TIBQuery - это разве не для InterBase?
Ладно, я думаю, работа с Oracle в этом контексте не сильно отличается...
ava
Kesh | 14.01.2004, 14:45 #
Paradox А где еще можно про это почитать...
ava
Vit | 03.11.2004, 21:52 #
Перенесено из баз данных
ava
LSD | 03.11.2004, 23:11 #
Есть еще вариант с BFILE, там будут файлы в чистом виде.
added later:
Черт, а дата вопроса то smile
ava
Sleepy_PIP | 27.11.2004, 21:41 #
Цитата (LSD @ 3.11.2004, 23:11)
Есть еще вариант с BFILE, там будут файлы в чистом виде.
  added later:
  Черт, а дата вопроса то smile

вот тебе добавление любого ф. через ODAC к сожалению только с прмым апдейтом таблицы:

//=============================================================================
function AddFileAtt(const inr: TMbMailMsg; const midh, i: longint): longint;
var
idatt: longint;
begin
with datam.AddFileAttachSP do
begin
ParamByName('PID_MAIL_H').AsInteger:=midh;
ParamByName('PFILENAME').AsString:=TAttFile(inr.FAttFiles.Items[i]).FILENAME;
ExecProc;
idatt:=ParamByName('RESULT').AsInteger;
end;

with datam.UpdateAttQ do
begin
Prepare;
ParamByName('PATT').AsBlobRef.LoadFromStream(TAttFile(inr.FAttFiles.Items[i]).AttData);
ParamByName('PIDATT').AsInteger:=idatt;
Execute;
end;
Result:=idatt;

end;



Одак 2.5 ...
к сожалению через stored proc можно работать только да 32к файла (параметра), поэтому прямой апдейт таблицы.
Please register or login to write.
Firm of day
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Contributors
  Vit   Kesh   Paradox ava  LSD   Sleepy_PIP
advanced
Submit