.NET Core 是否有 ODBC 连接器在面向 Linux 而不是 unixODBC 时使用 iODBC?

问题描述 投票:0回答:1

我目前正在 ASP.NET 中构建一个 API,该 API 应该从 HyperFileSQL (PCSOFT) 中提取大量数据。虽然 PCSOFT 为其数据库系统提供了 Linux ODBC 驱动程序,但它是围绕 iODBC 构建的,因此与 System.Data.Odbc 不兼容。

有人知道 ODBC 连接器可以配置或编译为在针对 Linux 时使用 iODBC 而不是 unixODBC 吗?或者使用为 iODBC 和 unixODBC 构建的驱动程序的方法?

我尝试使用System.Data.Odbc,但找不到驱动程序,因为它正在unixODBC中寻找驱动程序。然而,在 cmd 中使用 iodbctest 访问数据库是有效的。

.net asp.net-core odbc unixodbc iodbc
1个回答
0
投票

最新版本的 iODBC 应该 可以与使用 UnixODBC SDK 以及 iODBC SDK 构建的驱动程序和应用程序一起使用。

不清楚“找不到驱动程序,因为它正在 unixODBC 中寻找驱动程序”是什么意思。我最好的猜测是您在不同位置安装了多个

odbc.ini
odbcinst.ini
文件,并且可能安装了 iODBC 和 UnixODBC 驱动程序管理器。

统一这些 - 即分别混合所有

odbc.ini
odbcinst.ini
的内容,并将物理文件放在一个位置(例如,
/usr/local/
)并将符号链接放在所有其他当前位置 - 并选择一组驱动程序管理器库,并删除其他库或确保您选择的库在钻取时始终排在第一位
LD_LIBRARY_PATH
... 可能 就是实现您的目标所需要做的一切。

© www.soinside.com 2019 - 2024. All rights reserved.