我在SSIS包中有一个“Native OLE DB \ Oracle Provider for OLEDB”连接,以便在ORACLE上执行一个过程。
程序运行正常但在日志文件中我看到下面提到的警告,这会降低执行速度。
Warning : Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done.
该程序具有 5输入和 2输出。在阅读了几篇文章之后说这可能是由于数据类型/大小不匹配造成的。
我个人认为它与连接设置有关。我创建了一个简单的任务,从表中删除没有任何para或变量的数据。仍有警告
简单的删除声明。
BEGIN DELETE FROM KC.KC_PAYMENT; END;
“验证完成”后出现警告。在删除语句“Progress”事件之前。
迪帕克
答案 0 :(得分:3)
有很多方法可以解决这个问题。我现在想的是
1)将指向oracle的Connection字符串存储到sql server表或变量中。
https://www.connectionstrings.com/oracle-provider-for-ole-db-oraoledb/
2)在获取记录时检查安全性。
3)使用SSIS的“Oracle提供程序for OLE DB”,不要使用“Microsoft Provider for Oracle”,因为它不存在64位版本。
4)使用SQLAgent安排包。