Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

цикл в storeproc [D6, IB6.x]


jen_bond ©   (2002-10-12 10:32:00) 

Подскажите, как задать циклическую обработку данных в storeproc.
for SELECT DISTINCT SDELKA.ID_SDELKA,
SDELKA.suma_du,
SDELKA.periud,
PLACE.metrazh,
SDELKA.skidka
from sdelka
into :OP_DOGOVOR,:b,:c,:d,:e
f=p+1;
do
так он ругается, а если вынести за do то происходит только одна итерация.
for SELECT DISTINCT SDELKA.ID_SDELKA,
SDELKA.suma_du,
SDELKA.periud,
PLACE.metrazh,
SDELKA.skidka
from sdelka
into :OP_DOGOVOR,:b,:c,:d,:e
do
f=p+1;


Desdechado   (2002-10-14 15:50:00) [1]

for SELECT DISTINCT SDELKA.ID_SDELKA,
SDELKA.suma_du,
SDELKA.periud,
PLACE.metrazh,
SDELKA.skidka
from sdelka
- а где ж таблица PLACE ?


jen_bond   (2002-10-12 14:17:00) [2]

Списибо за помощь я разобрался!


AlexVinS   (2002-10-12 14:15:00) [3]

2 kaif извиняюсь в субботу мозги не так работают ...


kaif   (2002-10-12 12:45:00) [4]

А как ты узнаешь, что всего одна итерация?
У тебя какому-то f присваивается какое-то p+1.
Это может произойти 1000 раз и результат будет тот же.
Опиши подробнее проблему.

2 AlexVinS (12.10.02 11:57)
SUSPEND не нужен, если производится обработка. Он нужен только, если процедура должна возвращать набор данных (для внешнего SELECT). SUSPEND приостанавливает процедуру до очередного FETCH данных.


AlexVinS   (2002-10-12 11:57:00) [5]

Если не ошибаюсь надо писать так
...
do
BEGIN
f=p+1;
SUSPEND; /*!!!!*/
END;

У меня так работало


Наверх

Титульная страница Поиск, карта сайта Написать письмо