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

Как указать процедуре что она відает множество?   Найти похожие ветки 

← →
Кило   (2003-02-18 11:28) [0]

Мастера , помогите!
Есть такая процедура:
CREATE PROCEDURE GETPATHTOROOT
RETURNS (
ID INTEGER)
AS
BEGIN
select id_operation
from type_operation
where child_cnt=0

into :id;
suspend;
END

ругается что возвращает множество, когда определена процедура, которая должна возращать одно значение.


← →
zacho ©   (2003-02-18 11:40) [1]

Дело в том, что в процедуре конструкция SELECT ... INTO ... должна возвращать только одну запись. Если тебе нужно обработать набор записей используй FOR SELECT ... INTO ... DO ...
Так что в твоем случае ошибка происходит потому что в таблице type_operation находится несколько записей с child_cnt=0


← →
Delirium^.Tremens ©   (2003-02-18 11:41) [2]

FOR
SELECT ...
INTO ..
DO
SUSPEND;


← →
Кило   (2003-02-18 11:44) [3]

А я думал, что не цыкле надо, ну ок, спасибо.



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

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



Память: 0.45 MB
Время: 0.01 c
1-17037
Programist
2003-02-25 10:49
2003.03.06
Траблы с поиском


4-17457
AlexandrRya
2003-01-15 22:56
2003.03.06
Выгрузка DLL


14-17299
Dimich1978
2003-02-20 09:25
2003.03.06
Траспортники барзеют(Пенза)


3-16934
mate
2003-02-16 16:38
2003.03.06
SQL запрос


1-17059
Plumbum
2003-02-25 15:39
2003.03.06
Быстрые клавиши для вставки компонент




   Наверх