SSIS +临时表

时间:2009-09-02 15:11:37

标签: sql-server ssis temp

我有一个存储过程,它返回2条记录并且包含来自临时表的select语句,所以当我在SSIS中的OLEDB源中使用此存储过程并且只是尝试将记录集插入目标SQL时使用OLEDB目的地的表。

它在源头抛出一个错误说:

[OLE DB Source [1661]]错误:OLE DB提供程序未返回基于SQL命令的行集。

此外尝试使用set nocount on和SET FMTONLY OFF

但无济于事............

需要帮助.........

2 个答案:

答案 0 :(得分:2)

之前我遇到过类似的问题,原因是SSIS无法确定动态SQL的输出。我通过在查询顶部包含一个与假设输出匹配的“假”Select语句来解决它。即。


CREATE PROCEDURE MyStoredProc
AS

    SELECT 1 As Field1, 2 As Field2, 3 As Field3 -- list of fields of appropriate type
    WHERE 1 = 0 -- so nothing is actually returned

    -- Real SQL goes here.

GO

答案 1 :(得分:0)

请使用相同的连接,并使延迟验证=真