Задача: необходимо загружать в базу бинарные файлы разных форматов и размеров.
Решение: стоит Oracle 9.2, создал табличку Код:
create table D_TEST_BLOB ( ID number(17) not null, FILENAME varchar2(200), DATA blob );
стоит делфя 5. использую компоненты АДО: Код:
ADOConnection1.Open; with ADOCommand1 do begin Text := 'insert into D_TEST_BLOB(ID,FILENAME,DATA) values (:pID,:pFile,:pData)'; try Prepared := false; Parameters.ParamByName('pID').Value := 1; Parameters.ParamByName('pFile').Value := FilenameEdit1.Text; Parameters.ParamByName('pData').LoadFromFile(FilenameEdit1.Text,ftBlob); Prepared := true; Execute; except on E: Exception do begin Application.MessageBox(PChar('Ошибка:'+#13#10+E.Message), 'Внимание',mb_ok or MB_ICONERROR); end; end; end;
В результате маленькие файлы (где-то до 100кб) сохраняются, а большие - нет. Выдается ошибка: ORA-1460: unimplemented or unresonable conversion reqested
Мож кто сталкивался - подскажите где собака зарылась... |