Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Трабл с АДО [D7, MSSQL]


Эдвард Глюк ©   (2008-07-08 16:23:00) 

Обнаружился такой глюк.
В невизуальном приложении открываем ADODataSet.
После чего если not IsEmpty делаем некую выгрузку в цикле.

В чем глюк:
IsEmpty говорит, что там пусто, хотя там не должно быть пусто.
Текст запроса и параметры отлогированы и проверены в манаджмент студио.
Кроме того (самое странное!)
recordset.save('recordset.rec',0) делает непустой файл, в котором видны ожидаемые данные.

В чем косяк? Почему IsEmpty тру?


Palladin   (2008-07-09 10:55:00) [1]

:)


sniknik   (2008-07-08 20:33:00) [2]

ага, это часто так... сначала обещают чудо, а после оказывается что это факир пьян.


Эдвард Глюк   (2008-07-08 18:13:00) [3]

Хех. Дело дело не в бобине ....


Эдвард Глюк   (2008-07-08 17:01:00) [4]

В точки не попадаю.
ИзЕмпти есть и пишет в лог что емпти


Anatoly Podgoretsky   (2008-07-08 16:49:00) [5]

> Эдвард Глюк  (08.07.2008 16:33:02)  [2]

И что в точки не попадаешь?


Эдвард Глюк   (2008-07-08 16:49:00) [6]

В общем похоже на правду.
Такой же точно запрос по одной сущности работает без проблем (фильтрация по параметру)

этот же запрос вместо id = :param
использует id in (select ....)

Как отключить асинхронность?
Или как там зафетчить что-нибудь?


www   (2008-07-08 16:43:00) [7]

и где здесь isempty?


Эдвард Глюк   (2008-07-08 16:33:00) [8]

дык асинхронный фетч отключен (точнее не включен).
фактически там вот такой код:

with TAdoDataSet.Create(Self) do
try
 Connection := ...
 CommandText := ....
 /* Параметры */
 Open;
 while not Eof do
   begin
    ...
    Next;
   end;
finally
end;


www   (2008-07-08 16:28:00) [9]

для проверки isempty необходимо фетчнуть хоть одну запись
если же датасет серверный, то может до тебя не долетели еще записи


Наверх

Титульная страница Поиск, карта сайта Написать письмо