【发布时间】:2019-01-14 06:41:05
【问题描述】:
无论如何,我尝试在 SSIS 中使用这种两个源目标,但我找不到它们在配置方面的区别。那么谁能分享我知道,我应该选择什么?以及在每种情况或数据中使用哪个更好。
【问题讨论】:
标签: sql-server ssis etl
无论如何,我尝试在 SSIS 中使用这种两个源目标,但我找不到它们在配置方面的区别。那么谁能分享我知道,我应该选择什么?以及在每种情况或数据中使用哪个更好。
【问题讨论】:
标签: sql-server ssis etl
仅 OLE DB 连接可用作 SSIS 查找的来源。您不能选择 ADO.Net 类型的连接进行查找。
仅 ADO.Net 支持较新的 SQL Azure 授权方法,例如 Active Directory - Password。 OLE DB 只能使用 SQL 身份验证
我的建议是,如果您计划迁移到或使用 SQL Azure,请不要使用 OLE DB
如果可能的话,我也建议不要使用查找
ADO.Net 肯定比 OLE DB“更新”,并且更符合 C#.... 我没有引用,这只是我的理解。
.. 只是为了巩固答案。
@Ferdipux 在下面的回答中提出了一个很好的观点:
ADO.NET 连接管理器可以在脚本任务/转换的 C# 代码中使用,无需任何额外操作。只需获取它并调用 AquireConnection 方法即可。
【讨论】:
搜索了这个话题后,我在MSDN网站上发现了一个帖子,从4个角度进行了比较:
您可以参考此链接了解更多信息:OLE DB VS ADO.NET
还有一些有用的链接可以参考:
【讨论】:
添加到 Nick 的回答中,ADO.NET 连接管理器可以在脚本任务/转换的 C# 代码中使用,而无需任何额外的操作。只需获取它并调用AquireConnection 方法。
OLEDB 连接管理器必须以某种方式转换为 ADO.NET;我通过解码它的连接字符串来做到这一点。
如果您使用的是普通 SSIS,并且不考虑迁移到 Azure,则 OLEDB 连接对于日期检索会更快。
【讨论】:
这是另一篇评论,并列出了一个新原因:
ADO.NET 连接的一个额外优势是在执行 SQL 任务中使用参数时。在 OLEDB 中,参数在 SQL 中都显示为“?” 但在 ADO.NET 中,您可以按名称引用它们中的每一个,例如 @ParameterName
【讨论】: