AKTUALIZACE listopad 2020.
Tento příspěvek byl nahrazen uživatelem Jak provést uloženou proceduru ze SSIS, aby se její výstup dostal do textového souboru
který popisuje, jak spustit uloženou proceduru ze SSIS
exec mySproc WITH RESULT SETS ((i int))
podívejte se na řešení poskytnuté Troyem Witthoeftem
Stará odpověď
Existuje další řešení uvedené na https://web.archive.org/web/20120915093807/http://sqlserverpedia.com/blog/sql-server-bloggers/ssis-stored-procedure-metadata
. Podívejte se na možnost 3. (listopad 2020; aktualizovaný odkaz)
Citace:Přidejte do uložené procedury nějaká metadata a „set nocount on“ s „klauzulí o zkratu if“ (pokud 1=0) a falešným příkazem select nahoře. Testoval jsem s pokusem vynechat "set nocount on" a nefungovalo to.
CREATE PROCEDURE [dbo] . [GenMetadata] AS
SET NOCOUNT ON
IF 1 = 0
BEGIN
-- Publish metadata
SELECT CAST (NULL AS INT ) AS id ,
CAST (NULL AS NCHAR ( 10 )) AS [Name] ,
CAST (NULL AS NCHAR ( 10 )) AS SirName
END
-- Do real work starting here
CREATE TABLE #test
(
[id] [int] NULL,
[Name] [nchar] ( 10 ) NULL,
[SirName] [nchar] ( 10 ) NULL
)