プロが教える店舗&オフィスのセキュリティ対策術

はじめまして。

現在、Tivoli(MAXIMO)で使用しているDB2を自分のクライアント端末からDB2に接続し、VBで帳票を作ろうとしています。

しかし、DB2へ接続しようとすると、エラーとなります。
エラー内容は。
実行時エラー'2147217887(80040e21)
CLI0124E 引き数の値が無効です。SQLSTATE=HY009となります。
DB2のランタイムクライアントをインストールしているので、ODBCには問題がないと思います。

接続のところで、エラーとなるようです。

コーディングは以下のようにしております。
strSQL = "select * From TICKET"
' 接続 cn.Open "Provider=IBMDADB2;DSN=MAXIMO.TICKET;UserID=user名;Password=password;"
Set rs = cn.Execute(strSQL)

DB2のバージョンは9

以上、よろしくお願いいたします。

A 回答 (3件)

よくわからないけれど、


>DSN=MAXIMO.TICKET;
TICKET ってテーブル名じゃないの?
DSN=MAXIMO;
でいいような気がしますが、
というかDSN名はあっていますか?

参考URL:http://www.ibm.com/developerworks/jp/db2/library …

この回答への補足

早々のご回答ありがとうございます。

>DSN=MAXIMO;
DSN名なのですが、コンパネのODBCデータソースアドミニストレータの「ユーザーDNS」の名前で宜しいのでしょうか?。
「ファイルDSN」の「.dsn」の名前の事でしょうか?。

「ユーザーDNS」だと「DB2」の名前です。
「ファイルDNS」だと、「TICKET.dsn」で作っており、
どちら行っても、実行時エラーとなってしまいます。

SQL1027N ノード・ディレクトリーが見つかりません。

申し訳ございませんが、ご教示の程お願いいたします。

補足日時:2008/10/29 18:03
    • good
    • 1

>ODBCには問題がないと思います。


ODBC の設定のところで、接続テストをするところがありますが、接続はできますか?
DB2のCLPとか、コントロールセンターからDBに接続することはできますか?
できないなら、DSNを作り直す必要があるかもしれません。
接続できるなら、接続データベース名の可能性が一番高いと思います。

http://publib.boulder.ibm.com/tividd/td/TRM/GC32 …

f.別名と説明を入力する。
コネクションで利用するのは、この別名だと思います。

この回答への補足

早々のご回答ありがとうございます。

ODBCの設定、うまくいっていない可能性があるようです。
システムDSNの「構成」ボタンから、CLI/ODBC設定でユーザIDとパスワードをDB2インストール時に設定した、ユーザIDとパスワードで「接続」ボタンを押下しても、「「SQL1027N」ノードディレクトリが見つかりません」のエラーメッセージが出力されます。
CLI/ODBC設定の「詳細設定」タブのCLIパラメータは、「DBALIAS」、値「TICKET」、ペンティング値「TICKET」となっています。

あとは、何処を調べたら宜しいのでょうか。
ご教示の程、お願いいたします。

補足日時:2008/10/30 15:25
    • good
    • 0

>ODBCの設定、うまくいっていない可能性があるようです。


(自分で設定をしたものなら)ODBCを設定しなおす必要があるようです。
前回のIBMのページを参考にして作り直してみてください。
ここで接続できなければ、ODBC接続は使えません。
    • good
    • 0
この回答へのお礼

ご連絡が遅くなりまして、申し訳ございませんでした。

ODBC設定に問題があったようです。
DB2の構成アシスタントからホスト名の指定を、サーバ名からIPアドレスに変更したら、接続ができるようになりました。

いろいろ、お手数をおかけいたしまして、申し訳ございませんでした。

ありがとうございます。

お礼日時:2008/12/04 17:07

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!