アプリ版:「スタンプのみでお礼する」機能のリリースについて

AccessからSQLでデータを取り出すCGI(Perl)を作っているのですが、
コマンドプロンプトで実行するとSQLが正しく実行されデータを抽出できるのに、
CGIとして動かすと、SQLの実行がうまくいかないようで、データの抽出ができません。

何に問題があるのでしょうか・・・?
CGIもPerlも全くのド素人なので、本やネットでひとつひとつ調べながら書いていて、
このエラーに関しても、ここ2,3日ずっと調べたり書き換えて試したりしているのですが、
全く原因がわからず、途方にくれています(>_<)

助けてください・・・。よろしくお願いいたします。

■CGIのソース
----------------------------------
#!C:/Perl/bin/perl
use OLE;

$cnDB = CreateObject OLE "ADODB.Connection";
$cnDB->Open('Test'); # TestはODBC接続しています
$rs = $cnDB->Execute('SELECT * FROM test;');

$ret = "";
if($rs eq undef){
 $ret = "ERROR";
}
else{
 for ( ; !$rs->EOF(); $rs->MoveNext ) {
  $ret = $ret.$rs->Fields('data')->Value"\n";
 }
}

$rs->Close();
$cnDB->Close();

# このあとHTML形式で$retを書き出して結果を見ています


■実行結果($retの値)
----------------------------------
・コマンドプロンプトで実行
  $ret = 抽出データ
・CGIで実行
  $ret = ERROR


■実行環境
----------------------------------
・ActivePerl5.8.x (xはなんだったか忘れてしまいました)
・Windows2000サーバー上で実行(IIS)
----------------------------------

A 回答 (1件)

コマンドラインで実行している時と、CGIとして実行する時では、ユーザーが異なると思いますが、その点はクリアされていますか?

この回答への補足

回答ありがとうございますm(_ _)m

私の知識が乏しいため、ずれたことを書いているかもしれませんが・・・。
開こうとしているAccessファイルのセキュリティは
「Everyoneでフルコントロール」になっています。
なので、誰でも「フルコントロール」で使えるのかなと思います。

補足日時:2005/09/05 01:00
    • good
    • 0
この回答へのお礼

ODBC接続の設定ミスが原因だということがわかりましたf(^^;;
どうもありがとうございました。

お礼日時:2005/09/07 23:31

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