こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

「ORA-6413 接続がオープンしていません」 エラーについて

VB6.0で開発したアプリ内でPro*Cプログラムを
Shell関数でCALLしてOracle8iデータベース環境に
接続しようとしていますが、Pro*Cプログラム内の
CONNECT命令で"ORA-6413 接続がオープンしていません。"が返され、接続できません。
(Pro*Cコンパイル時のNetのバージョンもマシン環境と合わせてあります)
どなたか解決策お持ちの方、教えて頂けないでしょうか。よろしくお願いします。
なお、この処理は以前は全く問題なく動いていたのですが、
突然接続エラーが出るようになってしまいました。

※コーディングは下記のようにしています。
(VB)
変数1 = Shell(PRO*C.exe 接続情報(id/ps@Host) 引数2 引数3 引数4 引数5 引数6 引数7)

(Pro*C ちょっと見にくいですが。。)
int DBConnect( 接続情報 )
    char *接続情報 ;
{
strcpy( (char *)変数.arr, 接続情報 ) ;
変数.len = strlen( (char *)変数.arr ) ;
EXEC SQL CONNECT :変数 ;
return(0) ;
sqlerr:
warning:
Err_Print( sqlca.sqlerrm.sqlerrmc ) ; ←Connectでエラーとなりここに飛んでます。Err_Print内でテキストにエラーメッセージを吐いてます
return(-1) ;
}

投稿日時 - 2005-04-22 16:25:16

QNo.1345888

困ってます

このQ&Aは役に立ちましたか?

10人が「このQ&Aが役に立った」と投票しています

回答(5)

ANo.5

先ほど同様の問題が発生し、
検索してここにたどり着きました。
(前は動いていたのに動かなくなった)

原因はEXE名にカッコが入っていたからでした。
→EXE名を変えると動作しました。

EXE名もoracleに送信されるので
使ってはマズイ文字が入ったEXE名だと
接続できなくなるからです。

投稿日時 - 2005-05-04 21:21:36

ANo.4

>ちなみに他のPCではありませんが、他のPro*Cexeは同じ接続文字列で接続できて動いてます。

じゃぁ、一番先に思いつくのは動かないPro*Cのexeが悪いってことですよね。

他に何が考えられますか?
exeの引数の処理の仕方が間違ってるだけのような気もしますけど。

投稿日時 - 2005-04-25 23:17:44

ANo.3

>しかし、DOS窓上でVBコーディングと同じようにPro*C.exeを起動すると
>VBから実行したのと同じ結果となってしまいます。
>(つまり、VBからの引数のid/pass@HOSTでPro*C内でCONNECT命令を発行すると接続できないということです)


もうひとつ確認ポイントを挙げていたんですけど。

>・他のPCでPro*Cのexeをコマンドプロンプトから起動して動作するか?

投稿日時 - 2005-04-25 14:48:29

補足

現在、すぐには他のPCが準備できないので問題のEXEを他PCで試すことができません。
ちなみに他のPCではありませんが、他のPro*Cexeは同じ接続文字列で接続できて動いてます。

投稿日時 - 2005-04-25 15:05:05

ANo.2

この部分が気になりますが、SQL Plusでは接続できますか?

>なお、この処理は以前は全く問題なく動いていたのですが、
>突然接続エラーが出るようになってしまいました。

投稿日時 - 2005-04-23 13:39:18

補足

補足が遅くなり申し訳ありません。
SQL PlusではVBコーディング内のid/passで接続できます。
しかし、DOS窓上でVBコーディングと同じようにPro*C.exeを起動するとVBから実行したのと同じ結果となってしまいます。(つまり、VBからの引数のid/pass@HOSTでPro*C内でCONNECT命令を発行すると接続できないということです)
引き続きのフォロー、お願いします。

投稿日時 - 2005-04-25 10:26:52

ANo.1

まず、問題の切り分けが必要。

・Pro*Cのexeをコマンドプロンプトから起動して動作するか?(同じPC上で)

するんでしたらVBからの呼び方が悪いってことに。
しないんだったら、

・他のPCでPro*Cのexeをコマンドプロンプトから起動して動作するか?

これで切り分けはできるんじゃないですか?

投稿日時 - 2005-04-22 20:40:25

あなたにオススメの質問