Вниз
Скачать: CL | DM;

Что за трабл?   Найти похожие ветки 

 
Соловьев ©   (2003-05-15 10:28) [0]

Не могу догнать в чем трабла. Процедура получения всех детей родителя:
CREATE PROCEDURE GET_CHILD (
ID_NODE INTEGER)
RETURNS (
ID INTEGER)
AS
declare variable temp_id integer;
BEGIN
temp_id = :id_node;
for
select "id"
from "management_structure"
where "id" = :temp_id
into :temp_id
do
begin
if (not id is null) then
execute procedure "GET_CHILD"(:temp_id);
SUSPEND;
end
END

ругается, на строку
execute procedure "GET_CHILD"(:temp_id);
типа неверный параметр у процедуры.
версия FB 6.2.2.908


 
Соловьев ©   (2003-05-15 10:47) [1]


> if (not id is null) then

тут я стормозил вместо id надо :temp_id.
Мастаки, где я еще стормознул? помогите. вроде утро, а я торможу :(


 
Johnmen ©   (2003-05-15 10:53) [2]

Сначала надо создать "пустую" процедуру, а потом "наполнить содержимым" с помощью ALTER PROCEDURE.


 
Johnmen ©   (2003-05-15 11:06) [3]

...и делать SELECT из процедуры...


 
Rad ©   (2003-05-15 12:08) [4]

А разве надо название процедуры заключать в кавычки, если создается она с названием без кавычек?


 
Danilka ©   (2003-05-15 12:27) [5]

честно говоря, не могу врубиться в этот код:
select "id"
from "management_structure"
where "id" = :temp_id
into :temp_id


может надо что-то типа:
select "id"
from "management_structure"
where " parent_id" = : ID_NODE
into :temp_id


 
Соловьев ©   (2003-05-15 13:08) [6]

все, спасибо Johnmen ©. и еще сайту http://www.krista.ru/ib/recursion.html



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.011 c
3-2768
prof
2003-05-14 06:36
2003.06.02
Проблемы с индексом


6-3039
DDS
2003-04-03 13:40
2003.06.02
Как узнать скорость соединения и время нахождения в интренете?


3-2744
Studentik
2003-05-12 10:43
2003.06.02
InterBase и WebModule вместе работать не могут...


14-3118
Alex Konshin
2003-05-13 01:36
2003.06.02
Американские авто.


1-2906
leonidus
2003-05-19 01:11
2003.06.02
Высота меню PopUp




   Наверх