【问题标题】:DSN driver architecture mismatch with applicationDSN 驱动程序架构与应用程序不匹配
【发布时间】:2012-11-11 15:54:02
【问题描述】:

在 AX2012 中,我想建立一个到 SQL Server 2008R2 的 ODBC 数据库连接。为此,我构建了 32 位系统-DSN ‘SQL Server Native Client 10.0’ (C:\Windows\SysWOW64\odbcad32.exe)。

如果我将以下代码作为作业或直接在表单的按钮中启动,则与数据库的连接是正确的。

{
    LoginProperty                   loginProperty;
    OdbcConnection                  myConnection1;
    Statement                       myStatement;
    SqlStatementExecutePermission   perm;
    str                             _query;
    ResultSet                       result;
    str                             retVal;
    ;

    #macrolib.ocMegaBoard

    loginProperty = new LoginProperty();
    loginProperty.setDSN( #OCDSN );

    myConnection1 = new OdbcConnection( loginProperty );
    info('OK');
}

如果我在不同的过程调用中启动相同的代码,则会出现以下错误消息: '[Microsoft][ODBC Driver Manager] 指定的 DSN 包含驱动程序和应用程序之间的体系结构不匹配'

拜托,你能帮帮我吗?

【问题讨论】:

  • 不同的过程调用是在服务器上执行的,而不是在客户端上执行的(反之亦然)?当然,只有在两台机器上都创建了 DSN 时才会发生这种情况。

标签: odbc database-connection axapta dynamics-ax-2012


【解决方案1】:

elsewhere已报告了类似问题。

您的代码很可能在由客户端(32 位)执行时可以工作,但在服务器 AOS(64 位)上执行时会失败。请务必在您的 AOS 服务器上定义您的 DSN,此处为 64 位。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-12
    • 2016-08-26
    • 1970-01-01
    • 2014-01-12
    • 1970-01-01
    相关资源
    最近更新 更多