我使用unixODBC
的应用程序(无法提供代码,因为它很长)。另外,我已经安装了isql
。一切似乎都配置正确 - 驱动程序,服务器等,使用isql
,我没有任何问题连接到Informix数据库。但即使我使用相同的设置,我的应用程序也无法连接。返回的错误是:
IM00 [unixODBC][Driver Manager]Data source name not found, and no default driver specified
所以,这是“有趣”的部分 - 我将odbc.ini
文件复制到~/.odbc.ini
和/etc/odbc.ini
然后一切开始工作几乎可以(“差不多” “,因为应用程序可以连接到一个DSN,但不能连接到另一个,但它仍然是一些东西。
另外:
[root@xxx xxx]# odbcinst -j
unixODBC 2.3.0
DRIVERS............: /usr/local/etc/odbcinst.ini
SYSTEM DATA SOURCES: /usr/local/etc/odbc.ini
FILE DATA SOURCES..: /usr/local/etc/ODBCDataSources
USER DATA SOURCES..: /usr/local/etc/odbc.ini
SQLULEN Size.......: 4
SQLLEN Size........: 4
SQLSETPOSIROW Size.: 2
[root@xxx xxx]$ echo $ODBCINI
/usr/local/etc/odbc.ini
[root@xxx xxx]$ echo $INFORMIXDIR
/usr/informix
INFORMIXDIR也正确设置。没有任何内容~/.odbc.ini
/etc/odbc.ini
{实际上,第二个帮助,与~/.odbc.ini
无关,只是尝试了它(:)
odbc.ini
已正确配置,因为isql
工作正常。
如果您需要更多信息,请告诉我们。谢谢(:
答案 0 :(得分:0)
要使用ODBC运行程序以连接到Informix,您需要安装Informix ODBC驱动程序(或者,可以想象,改为使用IBM Common Client驱动程序)。要获得该驱动程序,您需要在计算机上安装ClientSDK或CSDK产品或其运行时等效产品I-Connect,然后正确配置DSN。 Informix SQL产品(称为isql,因为它是主程序名称)不使用或(因此)安装ODBC驱动程序;它使用ESQL / C连接。 (但是,在第二个想法,你将参考UnixODBC附带的isql - 而不是Informix产品。)
ClientSDK可以在没有支持的情况下获得,纯粹的名义成本为0.00美元。支持更昂贵。同样适用于I-Connect。在链接页面的RHS上,“技术详细信息”下是“Informix下载”的链接,您可以从中获取CSDK。
您还可以查看可以使用的各种新版本的Informix(Informix Dynamic Server),以及一些许可限制(仔细阅读许可证),以及那些包含CSDK的软件包。
答案 1 :(得分:0)
/usr/local/lib
添加了/etc/ld.so.conf
,一切都正常......
无论如何,非常感谢你的帮助(: