![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как указать процедуре что она відает множество? [D6, IB6.x, FireBird]
Кило © (2003-02-18 11:28:00)Мастера , помогите!
Есть такая процедура:
CREATE PROCEDURE GETPATHTOROOT
RETURNS (
ID INTEGER)
AS
BEGIN
select id_operation
from type_operation
where child_cnt=0
into :id;
suspend;
END
ругается что возвращает множество, когда определена процедура, которая должна возращать одно значение.
Кило (2003-02-18 11:44:00) [1]А я думал, что не цыкле надо, ну ок, спасибо.
Delirium^.Tremens (2003-02-18 11:41:00) [2]FOR
SELECT ...
INTO ..
DO
SUSPEND;
zacho (2003-02-18 11:40:00) [3]Дело в том, что в процедуре конструкция SELECT ... INTO ... должна возвращать только одну запись. Если тебе нужно обработать набор записей используй FOR SELECT ... INTO ... DO ...
Так что в твоем случае ошибка происходит потому что в таблице type_operation находится несколько записей с child_cnt=0