首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SSIS -使用Attunity驱动程序从Orace导入时缺少列OBJID

SSIS -使用Attunity驱动程序从Orace导入时缺少列OBJID
EN

Stack Overflow用户
提问于 2017-08-22 23:32:45
回答 1查看 137关注 0票数 0

我的客户使用一个名为IFS (一个ERP系统)的工具,该工具在Oracle上运行(客户运行11.2)。我的工作是使用Microsoft SQL Server Integration Services (或SSIS)从那里提取信息。为此,我们使用Oracle的Attunity驱动程序(默认ODBC太慢)。

今天,我在现有的包中添加了一些新列,方法是将它们添加到现有查询的末尾。令我惊讶的是,当我随后尝试将新列连接到新表时,却没有显示任何结果。结果,列中的值不是我期望的值。在一些冗长的故障排除会议之后,我发现了以下内容。

大多数IFS对象的末尾都包含三列:OBJIDOBJVERSIONOBJKEY。然而,这些列正在发生一些险恶的事情。它们几乎总是按照上面的顺序选择的:

查询Oracle将生成所有有效列和数据:

但是,由于某些原因,OBJID在SSIS中未被识别为有效列,并拒绝显示为列。注意来自Oracle的数据是如何进入结果集的;只是不在正确的列中。来自该列的实际数据显然被完全忽略(在上面的屏幕截图中,该列看起来是空白的。我可能只是选择了一个糟糕的专栏来截图;它仍然证明了我的观点,并突出了问题的核心):

在SSIS中检查"Column“选项卡时,ROWID存在,但复选框未选中。手动检查它不会起任何作用。

我们也使用SSIS从SAP导入另一个名为OBJID的列,而且效果很好。因此,我怀疑问题可能出在Attunity驱动程序上,但似乎无法弄清楚到底发生了什么。

我希望有人以前遇到过这种情况,并有解决办法。

这是一个有趣的问题,让我困惑了好几个小时。我正在解决这个问题,所以没有立即需要解决的问题;问题纯粹是试图满足我自己的好奇心。

如果有任何提示,我将非常感激:)

EN

回答 1

Stack Overflow用户

发布于 2017-09-01 10:18:30

我在使用Attinuity连接器时遇到过一些奇怪的问题,当它被证明是不可靠的时,我已经一劳永逸地放弃了它们。包有时会工作,但在下一次运行时会停止工作。我调整了一些DFT,系统就崩溃了,有时我不得不从头开始重新创建。

你面临的问题也可能是这一点的直接结果。我强烈建议您转到“Oracle Provider for OLE DB”,您可以从这个链接- http://www.oracle.com/technetwork/developer-tools/visual-studio/downloads/index.html下载它。

如果有很多包,我理解这将是一项痛苦的任务,但这将是值得的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45821800

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档