DBD::ODBC を使用して、Perl スクリプト (v5.12.4) 内で Informix DB への ODBC 接続を確立しようとしています。私は多くのドキュメントを読み、壁にぶつかっているようで、ここでいくつかのヒントを得たいと思っていました.
私は unixODBC 2.2.14 を空の odbcinst.ini および odbc.ini ファイルと共にインストールしました (良くない、私は知っています)。また、IBM のサイトから Informix 用の CSDK をダウンロードしました。DBI の利用可能なドライバを確認すると、Informix もそこにリストされています。
私の問題は、.ini ファイルにドライバーと dsn の正しい情報を入力することに関連していると思います。Informix ドライバーがどこにあるか、それらを参照する方法、または dsn の構文がわかりません。私は mysql で DBI をしばらく問題なく使用してきましたが、ODBC は今のところより詳細で、少し頭を悩ませているようです。
スクリプトを実行して接続しようとすると、次のようになります。
DBI connect........failed: [unixODBC][Driver Manager]Data source name not found, and no default driver specified (SQL-IM002) at Informix.pl line 20
投稿に重要な詳細が欠けている場合はお知らせください。記載します。
ありがとう!
アップデート
別の投稿で、Java と私の OS が正常に動作しないことを発見したため、CSDK を正しくインストールできませんでした。というわけで、Ubuntu をリッピングして、SuSE をインストールしました。CSDK を正しくインストールし (希望)、.ini ファイルを更新しました。ちなみに、nm を実行してシンボルを表示することはできませんが、odbcinst.ini ファイルで参照しようとしている /opt/IBM/informix/lib/ ディレクトリにいくつかの .so ファイルがあります。isql 接続を実行すると、次のようになります。
[01000][unixODBC][Driver Manager]Can't open lib '/opt/IBM/informix/lib/nameofdriver.so. : file not found
これについて何かお勧めはありますか?ファイルに不正なスペース/文字がないかチェックし、ルートとして接続要求を実行しています。どんな助けでも大歓迎です。ありがとう!