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

Вниз

Большой запрос в interbase 6.0   Найти похожие ветки 

 
Васек1   (2005-03-01 17:03) [0]

Уважаемые мастера, подскажите плиз начинающему. Написал большую сторед процедуру (1282 строки) и она не работает. Если комментирую любой из кусков то работает, те такое впечатление что пролблема в длинне процедуры.
А может его как то оптимизировать можно?

запрос такого типа:

CREATE PROCEDURE STP_GET_EMPLOYEE_ACCOUNTS (
   EMPLOYEEID INTEGER)
RETURNS (
   ACCOUNTID INTEGER)
AS
DECLARE VARIABLE ISREP VARCHAR(1);
DECLARE VARIABLE ISSPEC VARCHAR(1);
begin
   (isRep <> "Y" and
    isSpec <> "Y" and) then
 for
   select a.accountID
     from ..........

     into :accountID
 do suspend;
 
 union

 else if
   (isRep <> "Y" and
    isSpec = "Y" and) then
 for
   select a.accountID
     from ......

     into :accountID
 do suspend;

.....................

end


 
Desdechado ©   (2005-03-01 17:08) [1]

длина откомпилированного кода процедуры (со всемы вызываемыми) не может превышать 64 кб
раздели на 2


 
Васек1   (2005-03-01 17:12) [2]

спасибо огромное за ответ, а если попробовать оптимизтровать без case можно как то ? Те в запросе идет полный перебор всех вариантов

(isRep <> "Y" and ..... and isSpec = "Y" and)


 
Desdechado ©   (2005-03-01 17:22) [3]

передать "вариант" как параметр извне


 
DSKalugin ©   (2005-03-01 19:27) [4]

все это можно решить без использования ХП на стороне клиента обычными запросами


 
Desdechado ©   (2005-03-01 20:47) [5]

2 DSKalugin
Может, человек хочет всю бизнес-логику на сервер вынести. Такое поощрять надо.


 
Васек1   (2005-03-02 13:16) [6]

Спасибо большое за ответы. Мне кажется самый лучьший вариант из всего выше изложенного будет вынести исполняемый код в несколько других процедур и вызывать их из первой в зависимости от условия. Еще раз большое спасибо.



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

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

Наверх




Память: 0.48 MB
Время: 0.043 c
1-1110404738
Мартын
2005-03-10 00:45
2005.03.27
Написал программу для выдирания паролей из Dial-Up, но...


3-1108848665
TheEd
2005-02-20 00:31
2005.03.27
Есть ли компоненты для визуализации таблиц много-ко-многим


11-1091191966
Vladimir Kladov
2004-07-30 16:52
2005.03.27
Версия 1.92 (дождались)


14-1110366844
Сергей_С
2005-03-09 14:14
2005.03.27
Сведения об учетной записи для COM+ сервера периодически исчезают


1-1110512730
SerKom
2005-03-11 06:45
2005.03.27
Как заставить окно минимизироваться на месте, а не над пан. задач