Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.02;
Скачать: CL | DM;

Вниз

Проблема записи в BLOB поле: ORA-01403: no data found   Найти похожие ветки 

 
Unk   (2004-04-03 19:53) [0]

Помогите решить проблему с записью в BLOB, записывая из потока возникает таже проблема
 if OpenDialog1.Execute then
 begin
   OraSQL1.SQL.Text:="UPDATE Blobtest SET file_name   = :file_name, binary_file = EMPTY_BLOB() WHERE id = :id RETURNING binary_file INTO :binary_file";
   OraSQL1.ParamByName("id").AsInteger:=2;
   OraSQL1.ParamByName("file_name").AsString:=ExtractFileName(OpenDialog1.FileName);
 //ниже возникает ошибка ORA-01403: no data found
  OraSQL1.ParamByName("binary_file").AsBLOBLocator.LoadFromFile(OpenDialog1.FileName);
// так тоже не работает   OraSQL1.ParamByName("binary_file").LoadFromFile(OpenDialog1.FileName,ftOraBLOB);
   OraSQL1.Execute;
 end;


 
Наталия ©   (2004-04-04 10:50) [1]

Трудно что-либо сказать по данному коду, так как не указаны ни компоненты доступа, ни тип поля в БД...
Могу лишь предложить вариант записи через TMemoryStream - работает без проблем.
MS : TMemoryStream;
   ...
 with QEquipmentUpd do begin
 sql.clear;
 sql.add("update inv_Equipments set icon_of_eq=:p_icon_of_eq where id=:p_id");
 parambyname("p_id").asinteger:=l_id;
 ParamByName("p_icon_of_eq").DataType := ftBlob;
 ParamByName("p_icon_of_eq").ParamType := ptInput;
 ParamByName("p_icon_of_eq").LoadFromStream(MS,ftBLOB);
 execsql;
 end;


 
Unk   (2004-04-04 12:35) [2]

Спасибо. Доступ к базе через ODAC. Я уже локализовал ошибку, необходимо было в строке OraSQL1.ParamByName("binary_file").LoadFromFile(OpenDialog1.FileName,ftOraBLOB);
вместо параметра ftOraBLOB ставить ftBLOB.
Без потока работает тоже прекрасно.



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

Текущий архив: 2004.05.02;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.023 c
14-1081390448
lokid7
2004-04-08 06:14
2004.05.02
Библиотека


3-1081223497
КиТаЯц
2004-04-06 07:51
2004.05.02
FireBird не ставится на Windows95, что делать?


1-1082015657
Курдль
2004-04-15 11:54
2004.05.02
Директивы компиллятора {$IF произвольная_константа = ..}


3-1081161321
+Evgen+
2004-04-05 14:35
2004.05.02
базы данных в сети


1-1082001029
bear9
2004-04-15 07:50
2004.05.02
Список выделенных компонентов в Tlistview