0

リモートサーバーのOracle DBに接続しようとしています:

userid = getenv("ORACLE_USER");
oracle_password  = getenv("ORACLE_USER_PASSWORD");
db_name = getenv("DB_NAME");

EXEC SQL CONNECT :userid IDENTIFIED BY :oracle_password USING :db_name;

エラーが表示されます: ORA-01034。

喜んでお手伝いします。ありがとう。

4

3 に答える 3

0

データベースが起動されていない場合、ORA-01034 エラーが発生します。

考えられる原因は次のとおりです。

  • SGA には、割り当てられたよりも多くの領域が必要です。

  • インスタンスを指すオペレーティング システム変数が正しく定義されていません。

次の行で問題が解決する場合があります

リンクをチェックアウト

于 2013-11-07T06:00:00.297 に答える
0
EXEC SQL BEGIN DECLARE SECTION; 
userid VARCHAR(50);
oracle_password VARCHAR(50);
db_name VARCHAR(50);
EXEC SQL  END DECLARE SECTION; 
main()
{
userid.arr = getenv("ORACLE_USER");
userid.len = strlen(userid.arr);
oracle_password.arr  = getenv("ORACLE_USER_PASSWORD");
oracle_password.len = strlen(oracle_password.arr);
db_name.arr = getenv("DB_NAME");
db_name.len = strlen(db_name.arr);
EXEC SQL CONNECT :userid IDENTIFIED BY :oracle_password USING :db_name;
if (sqlca.sqlcode==0)
{
prnitf("sucessful");
}
else
{
printf("failed");
return;
}
}

それがあなたに役立つことを願っています。

于 2013-11-07T05:00:48.720 に答える