![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Долго происходит вызов информации по lookup . [D6, Oracle, ]
alive © (2002-01-04 17:26:00)Приветствую Всех .
Когда я вызываю метод lookup на таблицу в которой всего 360 000 записей .Моя программа зависает минут на 5 .
Потом выдает правильный результат .Lookup выводит информацию по текстовому полю .
Работаю D6+DOA+Oracle8.0.5 .
Кто сталкивался с таким , помогите .
Илья А. Елдинов .
alive (2002-01-05 08:46:00) [1]Попробую обьяснить .
Есть две таблицы .В одной хранится полная информация о продукте .
В другой есть почти теже поля ,но заполняться они должны по данным с 1 таблицы .При условии что набор данных находится в режиме вставки .
look :=dbmod.tNsi_Kr.Lookup("K_PR",KOD_PR.Text,"M;S;T;GRM") ;
if VarIsArray (look) then Begin
VIRABOTKA.m.Value:=look[0];
if look[1] <> Null then
VIRABOTKA.s.Value:=look[1];
if look[2] <> Null then
VIRABOTKA.t.Value:=look[2];
if look[3] <> Null then
VIRABOTKA.grm.Value:=look[3];
end else
case VarType (look) of
VarEmpty : VIRABOTKA.m.Value:= "";
VarNull : VIRABOTKA.m.Value := ""
end ;
Mike_Goblin (2002-01-04 18:08:00) [2]36000 - в Lookup таблице - да Вы батенька шутник
Проблема в том, что записи для Lookup тянутся с сервера
В аналогичной ситуации я делал вычисляемое поле (calculated field) и запросом select ... from LookupTable where id = ... брал только одну запись, нужную для отображения
Юрий Жуков (2002-01-04 18:05:00) [3]Ха!
Всего 360 000 записей по всей видимости к тебе на клиента вытягиваюются.
Не кажется ли тебе, что это не самый лучший путь тянуть к себе все 360 000 записей.
Что мешает сделать Select * from bla_bla where .... ?