Найдено 6 результатов
- Вт 03 апр 2018 14:14
- Форум: Oracle Data Access Components
- Тема: Баг с загрузкой Blob-ов
- Ответы: 7
- Просмотры: 17190
Re: Баг с загрузкой Blob-ов
В новой версии ODAC 10.1.5 проблема устранена, спасибо!
- Пн 19 фев 2018 11:36
- Форум: Oracle Data Access Components
- Тема: Баг с загрузкой Blob-ов
- Ответы: 7
- Просмотры: 17190
Re: Баг с загрузкой Blob-ов
Извиняюсь что ввёл Вас в заблуждение, баг воспроизводится только при Query.Options.DeferredLobRead := True;
Исходники отправил на саппорт.
Исходники отправил на саппорт.
- Ср 07 фев 2018 16:14
- Форум: Oracle Data Access Components
- Тема: Баг с загрузкой Blob-ов
- Ответы: 7
- Просмотры: 17190
Re: Баг с загрузкой Blob-ов
Ошибка воспроизводится при любом значении данной опции
- Пн 05 фев 2018 11:24
- Форум: Oracle Data Access Components
- Тема: Баг с загрузкой Blob-ов
- Ответы: 7
- Просмотры: 17190
Баг с загрузкой Blob-ов
На версии ODAC 10.1.4 (на старой версии всё нормально), только в Direct режиме и только на мультибайтовой базе (версия 11.2.0.4) столкнулся с багом при загрузке Blob-а. В тестовом примере процедура TestPkg.GetBlob возвращает Blob, при попытке записать его в файл - записывается только 86 байт(на самом деле возвращаю с базы гораздо больше).
Почему-то неверно вычисляется BS.Size сразу после создания CreateBlobStream. Реальный размер задаётся только после попытки чтения потока.
Почему-то неверно вычисляется BS.Size сразу после создания CreateBlobStream. Реальный размер задаётся только после попытки чтения потока.
Код: Выделить всё
var
BS: TStream;
fs: tfilestream;
begin
BS := nil;
try
with CreateOraQuery('select TestPkg.GetBlob from dual') do
try
Open;
First;
BS:= CreateBlobStream(Fields[0], bmRead);
fs := tfilestream.create('d:\1.dat', fmCreate);
try
BS.position := 0;
fs.copyfrom(BS, 0);
finally
fs.free;
end;
finally
Free;
end;
finally
BS.Free;
end;
- Пт 25 ноя 2016 08:04
- Форум: Oracle Data Access Components
- Тема: Странное поведение RefreshRecord
- Ответы: 1
- Просмотры: 7649
Странное поведение RefreshRecord
ODAC 9.7.28 в Direct режиме на мультибайтовой базе (11.2.0.4).
В TOraQuery Параметры:
: P1 - тип string, значение 'A', ParamType - не задан
KeyField = rowid (можно и другой)
Открывается OraQuery нормально, но при RefreshRecord, выдаёт ошибку что не найден rowid (или другое поле). По трассе видно что Bind-ы принимают неверные значения. Если же задать ParamType = 'IN', то всё работает нормально. Так же всё работает нормально при не заданном ParamType в режиме с клиентом Oracle. На версии ODAC 9.7.25 таких ошибок то же не было.
В TOraQuery Параметры:
: P1 - тип string, значение 'A', ParamType - не задан
KeyField = rowid (можно и другой)
Код: Выделить всё
select '123' as ID, rowid from dual
where
(:P1<>'B')
- Чт 13 окт 2016 11:41
- Форум: Oracle Data Access Components
- Тема: Bind-ы, значения которых null, в неверной последовательности
- Ответы: 1
- Просмотры: 6103
Bind-ы, значения которых null, в неверной последовательности
Добрый день!
В ODAC 9.7.26 в Direct режиме только на мультибайтовой базе (11.2.0.4) проявляется следующий баг.
В TOraQuery Параметры:
:str0 - тип string, значение null
:str1 - тип string, значение 1
В результате возвращается 0 строк. По трассе заметно что Bind0 это :str1, a Bind1 это :str0, т.е. они перепутаны местами.
Если запустить без Direct режима или на не мультибайтовой базе или с предыдущей версией ODAC то последовательности Bind-ов верная.
В ODAC 9.7.26 в Direct режиме только на мультибайтовой базе (11.2.0.4) проявляется следующий баг.
В TOraQuery Параметры:
:str0 - тип string, значение null
:str1 - тип string, значение 1
Код: Выделить всё
select '123' from dual
where
:str0 is null and
:str1 = 1
Если запустить без Direct режима или на не мультибайтовой базе или с предыдущей версией ODAC то последовательности Bind-ов верная.