MISE À JOUR novembre 2020.
Ce message a été remplacé par Comment exécuter une procédure stockée à partir de SSIS pour obtenir sa sortie dans un fichier texte
qui décrit comment exécuter une procédure stockée à partir de SSIS
exec mySproc WITH RESULT SETS ((i int))
regardez la solution fournie par Troy Witthoeft
Ancienne réponse
Il existe une autre solution mentionnée sur https://web.archive.org/web/20120915093807/http://sqlserverpedia.com/blog/sql-server-bloggers/ssis-métadonnées-de-procédure-stockée
. Regardez l'option 3. (novembre 2020 ; lien mis à jour)
Citation :Ajoutez des métadonnées et le "set nocount on" à la procédure stockée avec une "clause if en court-circuit" (si 1 =0) et une fausse instruction select en haut. J'ai testé en essayant de laisser le "set nocount on" et cela n'a pas fonctionné.
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
)