“指定的DSN包含驱动程序和应用程序之间的体系结构不匹配” - 只有它不是真的

时间:2015-10-14 17:47:24

标签: ssis odbc

真的很困惑。在SQL 2012中使用BIDS / SSIS,并将ADO .net ODBC连接到UniVerse 11.2数据源。多年来一直如此成功。现在我在同一台机器上创建一个新项目,使用我在另一个项目中成功使用的完全相同的DSN创建ADO .net连接,并且验证失败。我可以读取表元数据,我可以预览前200行,但是当我实际尝试在BIDS中运行包时,我几乎立即在ADO .net连接上收到架构不匹配错误。我只使用32位驱动程序/ DSN(我知道64位和32ODBC管理之间的区别)。如上所述,指向完全相同的ODBC DSN的完全相同类型的ADO .net ODBC连接在不同项目中的完全相同的机器上完美地工作。我一直在比较属性表,看不出任何差异。我不得不遗漏一些明显的东西,但我不知道会是什么。

2 个答案:

答案 0 :(得分:2)

行。事实证明这是一个非常简单的事情,我可能已经在3年前已经想到并忘记了。 BIDS中的项目级别有一个Run64bitRuntime属性,默认为TRUE。将它设置为false,我即将参加比赛。

答案 1 :(得分:0)

对我来说,正是SQL Agent Jobs的配置导致了这个问题。在作业步骤属性对话框中:常规>高级选项卡有一个标有“32位运行时”的复选框。检查后作业成功运行。

Checking this box runs the agent job in 32-bit runtime