
Pro*cの質問です。
CONNECTは成功したのですが、カーソルのオープンでエラーになります。
(ORA-01012:ログオンされていません。)
環境に問題があると考え、いろいろと調べているのですが、全く解りません。
自分側か、DB側の問題なのかどうかも、判断できていない状況です。
非常に困っております。どなたか御存知の方、御教授ください。
以下が動作環境になります。
WIN版:
Windows2000,VC,Pro*C(8i),Net8,マルチスレッド
UNIX版:
Solaris8:ForteC,Pro*C(9i),Net8,64Bit,マルチスレッド
以上、情報が不足しているかも知れませんが、宜しくお願い致します。
No.2ベストアンサー
- 回答日時:
こんにちわ。
#1 のmuyoshid です。
AT 句を指定してCONNECT 文を実行しているにも関わらず、
カーソル宣言でAT 句が指定されていないのが原因では
ないでしょうか?
AT 句の詳細については、
「Oracle8i Pro*C/C++ プリコンパイラ・プログラマーズ・ガイド」
にて確認してみて下さい。
ユーザ登録が必要 (無料) ですが、OTN Japan でPDF 形式の
マニュアルをDownload する事ができます。
参考URL:http://technet.oracle.co.jp/
御指摘ありがとうございます。
現在、AT句なしでテストしています。(必要ない事が分かった為)
>EXEC SQL CONNECT :UserName IDENTIFIED BY :Password USING :DbString;
ちょっと頭が煮詰ってるので、クールダウン(散歩)してから作業し、追って結果を報告致します。
都合の良い時にまた、覗いてみてください。
それでは。
No.1
- 回答日時:
こんにちわ。
2点程確認させて下さい。
1) この現象は、Windows版, UNIX版の両方で発生するのでしょうか?
2) DB に発行しているSQL文 (CONNECT 文も含めて) を
教えて下さい。
この回答への補足
1)この現象は、Windows版, UNIX版の両方で発生しています。
2)以下がSQL文です。
intdb_logon(char* DbString)
{
charUserName[16]= USERNAME;
charPassword[16]= PASSWORD;
strcpy((char*)UserName.arr, UserName);
strcpy((char*)Password.arr, Password);
strcpy((char*)DbString.arr, DbString);
UserName.len = strlen((char*)UserName.arr);
Password.len = strlen((char*)Password.arr);
DbString.len = strlen((char*)DbString.arr);
EXEC SQL WHENEVER SQLERROR GOTO sql_err;
EXEC SQL DECLARE DB_NAME DATABASE;
EXEC SQL CONNECT :UserName IDENTIFIED BY :Password AT DB_NAME USING :DbString;
return(0);
sql_err:
return(-1);
}
intdb_cursordef()
{
EXEC SQL WHENEVER SQLERROR GOTO sql_err;
EXEC SQL DECLARE cursor CURSOR FOR
SELECT A FROM TBL;
return( 0 );
sql_err:
return(-1);
}
intdb_cursoropen()
{
EXEC SQL WHENEVER SQLERROR GOTO sql_err;
EXEC SQL OPEN cursor;
return( 0 );
sql_err:
return( -1 );
}
---------------------- 以上画SQL文です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
Oracleの起動時に、マウントしたりしなかったりで困っています。
Oracle
-
SIDとSERVICE_NAMEの違いとは?
Oracle
-
PCC-S-02201エラーの対処を教えてください!
Oracle
-
-
4
Pro c/c++ でホスト変数の後に.lenとか.arrの意味は?
C言語・C++・C#
-
5
突然オラクルへ接続できなくなりました
Oracle
-
6
Statement ignored というエラー
Oracle
-
7
COBOLのCOMP形式について
その他(プログラミング・Web制作)
-
8
データを削除しても表領域の使用率が減りません
Oracle
-
9
ORA-00984のエラーが出ます
Oracle
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
実行時エラー 438になった時の...
-
実行時エラー3001「引数が間違...
-
実行時エラー -'-2147417848
-
Excel VBA comboboxへの割り当て
-
VBAの実行時エラー91!どうしよ...
-
【マクロ】エラー【#DIV/0!】が...
-
EXCEL VBAマクロ中断でデバッグ...
-
VBAがブレークモードになっ...
-
VBAで、定数式が必要ですのエラ...
-
なぜこんな初歩的なVBAのIf文で...
-
なぜエラーになるのでしょうか...
-
エラーでつまってます・・・お...
-
ExcelVBA Range クラスの Page...
-
VBAでのエラー
-
VBで構造体を使うさ際の64k...
-
マクロについて教えてください...
-
Invalid procedure call or arg...
-
ExcelVBA ファイルクローズ時...
-
VBAのグラフの設定について
-
Excel VBA で End Subのところ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
実行時エラー 438になった時の...
-
VBAがブレークモードになっ...
-
【マクロ】エラー【#DIV/0!】が...
-
なぜこんな初歩的なVBAのIf文で...
-
VBAでのエラー
-
実行時エラー -'-2147417848
-
実行時エラー48発生時のDLL特定...
-
マクロについて教えてください...
-
ExcelVBA Range クラスの Page...
-
EXCEL VBAマクロ中断でデバッグ...
-
実行時エラー3001「引数が間違...
-
EXCEL/VBAで、自分のPCだけエラ...
-
VB6+SQL サーバー 2000 で 実行...
-
VBAのエラー発生場所をメッセー...
-
ADODB.Streamを使用してUTF-8を...
-
【Excel VBA】マクロをボタンに...
-
OLEDB.NETで接続できない
-
なぜエラーになるのでしょうか...
-
INSERT INTOステートメント構文...
-
Outlook.ApplicationをCreateOb...
おすすめ情報