• 締切済み

IIS Perl ADO ORACLE の組合せで障害が出ており困っております・・・

はじめまして、皆様宜しくおねがいします。 あるシステムを4台マシンでテストしておりまして障害が出ており解決できず泣く泣く投稿致しました。 内訳は以下の通りになります。 (A) win2Kp Oracle816 (B) win2Kp SQL*Net8 ADO IIS5 Perl613 (C) win2Kp SQL*Net8 ADO IIS5 Perl613 (D) win2Kp IE6 DのマシンからB及びCのWebサーバへアクセスし webサーバはAにPerlにてADO接続します・・・ ところが、Bの環境においては問題ないのですがCのWEBサーバへ接続すると以下の様なメッセージが出てしまい 大変困っております。 調査方法として何から手をつけて良いのか御教授願えますでしょうか 現在迄の調査結果と致しましては・・・ ・ IISの、ネットワークの設定に違いは見受けられません・・ ・ WEBコンテンツは全くAからのコピーです ・ CのマシンからAに対し SQL*PLUS、又はODBC接続でAのXXXXXXX表を参照する事は確認しました エラー内容 -・-・-・-・-・-・-・-・-・-・ CGI Error The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are: Can't call method "eof" on an undefined value at D:\Inetpub\HHHHHHHH.cgi line 104. HHHHHHHH.cgi のソース -・-・-・-・-・-・-・ 098 my $conn = CreateObject OLE "ADODB.Connection" || die "CreateObject: $!"; 099 $conn->Open('DSN='.$ORA_DSNAME.';UID='.$ORA_USERNAME.';PWD='.$ORA_PASSWORD); 100 my $sql = "select XXXXXXX from XXXXXXX where XXXXXXX = '$u' AND ((NENDO = '$yr1') or (NENDO = '$yr2'))" ; 101 # SQLの実行 102 my $rs = $conn->execute($sql); 103 my $db_passwd = ""; 104 if ($rs->eof()) {

みんなの回答

  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.1

エラーメッセージが、$rsがundefinedと報告しているので、 ・$conn->execute()が正しく実行されているか? ・それ以前に、$conn->Open()は成功しているか? ――を確認されては。 ここらへんエラーハンドリングがされてないようですので。

zukasiyo
質問者

補足

早速ありがとうございます。 恐らくexecute()で正しくSQL文が実行できないのでしょうが・・・ BのWEBサーバと全く同一のソースなだけに原因がわからないのです・・・ どこから手をつければよいのでしょうか・・

関連するQ&A

専門家に質問してみよう