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

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

Пропуск результата exec


bmw ©   (2003-10-28 17:14:00) 

Добрый вечер, all!
Вопрос по теме MS SQL Server / Хранимые процедуры
Исходные данные:
1) хранимая процедура A, возвращающая результат запросом select * from ...
2) хранимая процедура B, вызывающая х.п. A и тоже возвращающая результат в приложение другим запросом select * from ...

Хочется: прокинуть результат A и возвратить в приложение только результат х.п. B


bmw   (2003-10-29 10:13:00) [1]

Спасибо за варианты реализаций.
А, в принципе, есть ли какие варианты команды SET для погашения вывода результата select?


aus   (2003-10-29 01:59:00) [2]

добавь в процедуру А еще один параметр, в зависимости от которого будет или нет вызываться select

create procedure А @f bit as
if @f = 1
select * from Таблица
...............

примерно так я сделал.

А если изменение процедуры не входит в твои полномочия, в приложении используй NextRecorset.


me   (2003-10-28 21:36:00) [3]

Примерно так:
1. в процедуре В создаем временную таблицу, например #resultA со структурой резалтсета, возвращаемого процедурой А
2. в процедуре В не делаем select * from, а вместо него insert into #resultA ... (SQL2000 это скушает молча, а 7-й просто ругнется на отсутствие таблицы прри создании процедуры В)
3. в процедуре В анализируем содержимое таблицы #resultA и выбираем из нее данные "вовне" или нет


Наверх

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