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

Вниз

Unknown Error - Can t retrieve plan   Найти похожие ветки 

 
_RusLAN ©   (2006-03-21 11:29) [0]

FB 1.5.3

Запрос:
select distinct *
from hall h
where h.id in
 ( 15123,14906,15128,15269,15033,...таких элементов может быть до 1000)


выдает следующую ошибку:
Project Fiber_LM.exe raised exception class EIBPlanError with message "Unknown Error - Can"t retrieve plan".

в IBExperte исполняется, но на закладке "Анализ плана" пишет "Sorry, plan is unavailable for this statement..."

Если уменьшить количество элементов в списке то IBExpert выдает такой план:
PLAN SORT ((H INDEX (PK_HALL,PK_HALL,PK_HALL,PK_HALL,PK_HALL,PK_HALL,PK_HALL,PK_HALL,PK_HALL,PK_HALL ,PK_HALL)))

Может как-то запрос переделать или план самому указать(какой?)?


 
Johnmen ©   (2006-03-21 11:37) [1]


> Может как-то запрос переделать


Конечно. От бардака надо избавляться...


 
_RusLAN ©   (2006-03-21 11:50) [2]

Johnmen ©   (21.03.06 11:37) [1]
вы про
where h.id in
( 15123,14906,15128,15269,15033,...таких элементов может быть до 1000)
?

я другого выхода не вижу
у меня есть список объектов (около 1000 элементов), пользователь выбирает нужные ему и согласно выбраным элементам создатся такой запрос.

А что есть какое-то ограничение на количество елементов в IN?


 
Romkin ©   (2006-03-21 11:55) [3]

_RusLAN ©   (21.03.06 11:50) [2]
Есть, около 1000 элементов в FB 1.5 :))) Кстати, сервер БД надо бы указывать.
К сожалению, это как раз тот случай, когда очень желательна временная таблица, которых нет, если это не FB2. Но ее можно эмулировать на основе обычной.


 
_RusLAN ©   (2006-03-21 12:24) [4]

Romkin ©   (21.03.06 11:55) [3]
Кстати, сервер БД надо бы указывать.


FB 1.5.3 (Я указал его в вопросе)

Romkin ©   (21.03.06 11:55) [3]
Есть, около 1000 элементов в FB 1.5 :)))

Если верить этому то 1500:
Dynamic SQL Error.
SQL error code = -901.
Implementation limit exceeded.
too many values (more than 1500) in member list to match against.


У меня 1084 элемента из которых максимум могут выбрать около 300. Так что запас у меня есть. Ошибка  возникает уже при 200 элементах.



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

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

Наверх




Память: 0.47 MB
Время: 0.054 c
2-1145976016
vegarulez
2006-04-25 18:40
2006.05.14
Привет мастерам! Как вызвать процедуру в DataModule из Unit`a.


15-1145264568
Некто
2006-04-17 13:02
2006.05.14
Виснет комп


9-1129754635
Ricks
2005-10-20 00:43
2006.05.14
Элементарный поиск пути


2-1145964823
ttt_111
2006-04-25 15:33
2006.05.14
Вопрос пл SQL запросу.


4-1140001042
Дубинка
2006-02-15 13:57
2006.05.14
убить скрытое окно, не делая его видимым