Можно ли вызвать sproc внутри sproc и поместить результаты в таблицу #temp без предварительного создания временной таблицы? - PullRequest
1 голос
/ 16 января 2012

Я пытаюсь вызвать sproc из другого sproc и помещаю результаты в временную таблицу без предварительного создания временной таблицы.Возможно ли это сделать или есть лучший способ?Я хочу использовать sprocB или functionB, чей набор результатов имеет несколько столбцов и несколько строк.thx.

sproc A  
..
begin
  -- create table #tmp.... -- Try not to create the #tmp table first if possible
  exec sproc_B ... put results from sproc_B in #tmp

end

sproc B
..
@id int
..
begin
  select table from aTable where id = @id
end

Аналогичный вопрос был задан здесь .

Ответы [ 3 ]

4 голосов
/ 16 января 2012
  create table #tmp....

  insert  #tmp
  exec sproc_B
2 голосов
/ 16 января 2012
CREATE TABLE #tmpTable
(
   COL1 INT,
   COL2 INT   
)

INSERT INTO #tmpTable 
Exec spGetResultset 'Params'
1 голос
/ 16 января 2012

Да, но вы должны создать таблицу перед использованием в. Синтаксис:

INSERT INTO YourTable EXEC YourProc

Нет необходимости говорить, что структура таблицыдолжно соответствовать выходу SP?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...