我正在尝试使用DBD :: ODBC在一个Perl脚本(v5.12.4)内建立一个到Informix数据库的ODBC连接。我已经阅读了大量的文档,似乎正在打墙,并希望在这里获得一些提示。Perl DBD :: ODBC到Informix DBMS
我有unixODBC 2.2.14安装了空odbcinst.ini和odbc.ini文件(不好,我知道)。我还从IBM网站下载了针对Informix的CSDK。如果我查看可用的DBI驱动程序,那么也会列出Informix。
我想我的问题与使用驱动程序和dsn的正确信息填充.ini文件有关。我不确定Informix驱动程序的位置,我如何引用它们或dsn的语法。我一直在使用DBI和MySQL一段时间,但是ODBC现在似乎更加深入和深入我的脑海。
当我试图运行一个脚本来连接,我得到:
DBI connect........failed: [unixODBC][Driver Manager]Data source name not found, and no default driver specified (SQL-IM002) at Informix.pl line 20
如果我错过任何重要的细节在后请让我知道,我会包括。
谢谢!
UPDATE
我得到了一个单独的后一些帮助找到Java和我的操作系统没有发挥好,所以我没能得到正确安装CSDK。所以,我撕掉了Ubuntu并安装了SuSE。我(我希望)现在已经正确安装了CSDK并更新了.ini文件。在附注中,我无法运行nm查看符号,但在/ opt/IBM/informix/lib/dir中有几个.so文件,我试图在odbcinst.ini文件中引用它。当我运行isql连接时,出现:
[01000][unixODBC][Driver Manager]Can't open lib '/opt/IBM/informix/lib/nameofdriver.so. : file not found
对此问题有任何建议吗?我检查了流氓空间/字符文件,并以root身份运行连接请求。任何帮助表示赞赏。谢谢!
bohica,非常感谢您的信息。我发现我的CSDK很可能没有正确安装,因此我需要在移动到.ini之前更正该部分。不能把马车放在马前..... – 2012-04-24 17:09:25
对不起,我在上面编辑了错误的帖子。新手...... – 2012-04-25 16:14:51
所以,当你解决这个问题时,请让我知道结论,我将推荐README.informix。 – bohica 2012-04-25 20:32:38