SSIS临时表错误
我有SP contain temp表,并在输出中生成4列 像 id、名称、原件和更改件 输出需要保存在平面文件中 任何人都可以建议如何执行SQL任务 我尝试使用oledb,数据访问模式为SQL命令,但出现错误 0x80040E14 谁能给点建议吗。 感谢从中借用答案,您可以使用WITH RESULT set提前告知SSIS引擎存储过程将返回哪些数据 通过此程序:SSIS临时表错误,ssis,Ssis,我有SP contain temp表,并在输出中生成4列 像 id、名称、原件和更改件 输出需要保存在平面文件中 任何人都可以建议如何执行SQL任务 我尝试使用oledb,数据访问模式为SQL命令,但出现错误 0x80040E14 谁能给点建议吗。 感谢从中借用答案,您可以使用WITH RESULT set提前告知SSIS引擎存储过程将返回哪些数据 通过此程序: CREATE PROCEDURE dbo.UseTempTable AS BEGIN SET NOCOUNT ON;
CREATE PROCEDURE dbo.UseTempTable
AS
BEGIN
SET NOCOUNT ON;
CREATE TABLE #MyTable(WhoCares INT NOT NULL IDENTITY(1,1) PRIMARY KEY, Whatever VARCHAR(99));
INSERT INTO #MyTable(Whatever) VALUES('Minger');
INSERT INTO #MyTable(Whatever) VALUES('Bonjour');
SELECT ColInt = WhoCares
, ColVarChar = Whatever
FROM #MyTable
END;
如果我尝试将SSIS 2012用作数据源,则会在SSIS 2012中出错
在数据流中
在2012年之前,有各种各样的技巧来显示假装的记录集
例如设置为FMTONLY ON。。。在2012年,这两种方法都不起作用
从中,我们只需要指定数据流数据源
作为
更多信息:为什么需要在执行SQL任务中执行此操作?您可以使用类似xp_cmdshell“BCP.EXE…”的东西,因为它是SSIS包的一部分。您应该能够放下数据流并将源设置为SP。您尝试过吗?像这样:非常感谢Nick。
EXEC('EXEC dbo.UseTempTable')
WITH RESULT SETS
( ( ColInt INT NOT NULL, ColVarChar VARCHAR(99)) )