Вызывать одну процедуру из другой нужно по одной простой причине. Дело в том, что Процедуры могут либо выбирать данные либо их модифицировать. Для того, чтобы с помощью хранимой процедуры найти запись и ее изменить получается нужно две процедуры. Первая будет делать выборку, а вторая изменять. Давайте попробуем. Мы изменим нашу процедуру, которая называется Selects и поставим условия на выборку. Подробнее о условиях смотрите "Шаг 5 - SELECT - дальше и глубже". Итак делаем:
Напишем вторую процедуру.
Вот, смотрите мы из нее вызываем Selects, чтобы иметь возможность получить запись. Потом говорим, что будем обновлять таблицу Piple и меняем значение ID. Теперь мы может вызвать эту процедуру.
EXECUTE Updates
И данные будут заменены. Вы с первого запуска в ISQL_w можете не увидеть результат, так как в Result будет отражен запрос Selects, который мы вызвали в первый раз. Так что не удивляйтесь. Вызовите Selects после обновления, чтобы сразу видеть два результата. Сразу после Set еще раз Execute, тогда вы будете видеть старое и новое значение. Вот так например:
ID Name ----------- ------ 400 HHH (5 row(s) affected) ID Name ----------- ------- 900 HHH (1 row(s) affected)