SSIS和首选数据提供程序(ADO.NET,ODBC)

时间:2011-10-18 17:05:28

标签: ssis

现在微软正式宣布OLE为passe.我很好奇每个人都喜欢使用什么提供商。我偏爱ADO.NET,但这只是因为我在将参数传递给存储过程时可以使用变量名。我应该开始使用ODBC吗?

由于

2 个答案:

答案 0 :(得分:0)

  

我应该开始使用ODBC吗?

不,你想在.NET中使用ADO.NET。如果数据库有ADO.NET提供程序使用它。 ODBC用于从非托管代码访问本机数据。

答案 1 :(得分:0)

我意识到这是一个非常古老的问题,但我觉得接受的答案会留下很多需要的信息。

SSIS的许多组件要么不支持ADO.NET连接,要么它们的ADO.NET版本缺少OLE DB版本的许多功能。我实际上建议仍然使用OLE DB和SSIS。

ADO.NET在很多方面都比较好,但是一旦你使用ADO.NET设置整个解决方案并发现你不能使用你期望的某些组件或功能,你会发现自己处于一个受伤的世界。工作

例如你不能:

  • 使用ADO.NET连接管理器作为SQL Server包配置源
  • 通过包变量在ADO.NET源中设置查询,而不从数据流外部设置它。 (OLE DB源在其本机配置窗口中具有通过包变量设置查询的选项。)
  • 正如Brent在问题的评论中提到的那样,你不能将查找转换用于ADO.NET源。

我确信在使用ADO.NET连接的SSIS中你还有更多的东西是你无法做到的,但我还没有碰到它们。但恕我直言,已经有足够的弊端超过在SSIS中使用ADO.NET的好处,直到它在工具中获得更多支持。