2015-02-09 92 views
1

我正在修改包含多个查找转换的SSIS包。根据我的经验,您必须创建一个使用查找的OLEDB连接。我被要求更改查询以连接到Teradata连接。我们安装了Attunity驱动程序,并且Teradata是ADO.NET连接下的一个选项,但不在本机oledb连接下。作为参考,我看到了Oracle的本地oledb。如何创建Teradata连接,以便在查找或ole db命令中使用?SSIS Teradata ole db连接

回答

2

对于2008+,查找组件有两个选项。首先是使用OLE DB连接管理器。对于所有其他连接管理器类型,使用Cache Connection Manager

添加一个数据流,我通常把我的“暖缓存”你用你的源,ADO.NET源并将其路由到一个缓存变换目标。当你的软件包开始时,它会将所有数据转储到CCM。

然后,在“实际”数据流中,将连接类型更改为引用您在上一步中填充的缓存。

+0

我们正在使用2008R2。这听起来像一个很好的回退选项,如果上面的驱动程序不适合我们,我感谢您的回应比尔! – 2015-02-09 23:07:48

+0

这对我们的查找非常有用,但是现在我们需要一个解决方案来替换数据流中的ole数据库命令。认为我们需要将查找结果存储在工作表中,然后在数据流之外使用执行SQL任务来完成此任务。任何其他想法? – 2015-02-12 19:39:49

+0

OLE DB命令适用于10行更新。除此之外,您通常会更好地将所有需要对表进行更新,然后再执行基于集合的更新,就像您指出的那样。 Bingle“SQL Server Incremental Load Pattern”由Andy Leonard提供。他在SQL Server Central上有很棒的系列,需要免费登录,涵盖了所有这些。 – billinkc 2015-02-12 19:44:13

1

对于Teradata的驱动程序,可以从Teradata数据下载OLEDB驱动程序,available here

+0

谢谢安德鲁。因此,在SSIS 2008R2中配置新的OLE DB连接管理器时,安装此驱动程序将允许我从提供程序下拉列表中选择Teradata? – 2015-02-09 23:04:44

+0

安装完成后,我们可以选择连接到Teradata的ole db连接,但是当我们在配置lookup或ole db命令之后尝试点击好的时候,SSIS挂起。另外,我们不断得到一个关于无法从ole数据库命令中获取teradata字段描述的错误。 – 2015-02-12 19:36:03