PERBARUI November 2020.
Pos ini telah digantikan oleh Cara EXEC prosedur tersimpan dari SSIS untuk mendapatkan outputnya ke file teks
yang menjelaskan cara menjalankan prosedur tersimpan dari SSIS
exec mySproc WITH RESULT SETS ((i int))
lihat solusi yang diberikan oleh Troy Witthoeft
Jawaban lama
Ada solusi lain yang disebutkan di https://web.archive.org/web/20120915093807/http://sqlserverpedia.com/blog/sql-server-bloggers/ssis-stored-procedure-metadata
. Lihat opsi 3. (November 2020; tautan yang diperbarui)
Quote:Tambahkan beberapa meta-data dan "set nocount on" ke prosedur tersimpan dengan "klausa if hubung singkat" (jika 1=0), dan pernyataan pilih palsu di bagian atas. Saya telah menguji dengan mencoba membiarkan "set nocount on" keluar dan tidak berhasil.
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
)