Krótka odpowiedź:nie, nie możesz tego zrobić.
Musisz wstępnie zadeklarować swoją tabelę tymczasową z dokładną liczbą kolumn, które zostaną zwrócone z przechowywanej procedury.
Obejściem tego problemu jest użycie trwałych tabel. Na przykład możesz mieć w bazie danych stałą tabelę o nazwie someSPResults. Za każdym razem, gdy someSP zostanie zmieniona, aby mieć inną liczbę kolumn wyjściowych, zmień format niektórychSPResults w ramach wdrażania.
Następnie możesz to zrobić:
insert into dbo.someSPresults
exec someSP
Lub wewnątrz someSP wyniki można wstawić bezpośrednio do tabeli someSPresults jako normalną część wykonania. Musisz tylko upewnić się, że dokładnie określiłeś, które rekordy w tabeli someSPresults pochodzą z każdego wykonania someSP, ponieważ ten przechowywany proces może być uruchamiany wiele razy jednocześnie, tym samym zrzucając dużo danych do someSPresults.