nhibernate odbc连接字符串

nkkqxpd9  于 2021-05-30  发布在  Hadoop
关注(0)|答案(2)|浏览(425)

我需要使用nhibernate连接到hadoop数据库。我试着用 NHibernate.Driver.OdbcDriver . 我们使用的驱动程序是用于impala的cloudera odbc驱动程序。
通过代码使用的连接字符串如下:

DRIVER=Cloudera ODBC Driver for Impala;
          Host=<Server>;
          Port=<port>;
          Schema=<schema>;
          AuthMech=0;
          CAIssuedCertNamesMismatch=0;
          TrustedCerts=C:\Program Files (x86)\Cloudera ODBC Driver for Impala\lib\cacerts.pem;

我想在nhibernate配置中保留此连接字符串,因此添加了以下内容:

<property name="connection.driver_class">
            NHibernate.Driver.OdbcDriver
        </property>
        <property name="connection.connection_string">
          DRIVER=Cloudera ODBC Driver for Impala;
          Host=<Server>;
          Port=<port>;
          Schema=<schema>;
          AuthMech=0;
          CAIssuedCertNamesMismatch=0;
          TrustedCerts=C:\Program Files (x86)\Cloudera ODBC Driver for Impala\lib\cacerts.pem;
        </property>

但这失败了,只有一个例外:

Message=ERROR [IM002] [Microsoft][ODBC Driver Manager] 
Data source name not found and no default driver specified .

请注意,此连接字符串在没有 nHibernate . 有什么明显的遗漏吗?

thigvfpy

thigvfpy1#

如果它能帮助别人;我安装了x64位驱动程序,医生说

Driver=Cloudera Impala ODBC Driver;

但是64位odbc管理员使用

Driver=Cloudera ODBC Driver for Impala;

一旦我换了一个合适的名字,它就运行得天衣无缝了

jaxagkaj

jaxagkaj2#

问题是应用程序是为64位配置构建的,安装的驱动程序是32位的。更改了配置并再次构建它,它成功了。

相关问题