我已将SSIS包从2008年升级到2014年。此外,我已将提供者值更改为" Provider = SQLNCLI11.1"。当我跑步时,我得到了像
这样的错误OLE_SOURCE_RECORDS [9]]错误:SSIS错误代码DTS_E_OLEDBERROR。
发生OLE DB错误。错误代码:0x80004005。
OLE DB记录可用。来源:" Microsoft SQL Server Native Client 11.0"
Hresult:0x80004005描述:"无法确定元数据因为语句' INSERT INTO #temptest ([a],[b])值(0,' b'在程序SPtest'使用临时表。"。
我研究并发现我们需要使用With result而不是temp table。但是我需要修改SP中的所有sql查询。
我们是否可以在不更改存储过程的情况下运行包。
答案 0 :(得分:0)
如果要在SSIS中使用本地临时表,您应该知道两个设置:
1)RetainSameConnection
属性为True
本地临时表仅在当前会话中可见。因此,您需要保留组件之间的连接。
2)ValidateExternalMetadata
为假