2017-11-06 30 views
0

私はそれを実行する手順と、毎回の中に動的な値を挿入しようとしていますが、私はこのエラーを取得見つからない「詳細」:「ORA-02291:整合性制約に違反 - 親キーが

。」詳細":" ORA-02291:整合性制約(VIEW.AA_DEFAULT_APP_LIST_FK_AA_APPは)違反 - 親キーこれは私の手順です

が見つかりません。

router.put('/update-applications/', jsonParser, function (req, res) { 
    var data = req.body; 

    logger.info(pool._logStats()); 

    logger.info("Begin: " + (new Date().toString())); 


    pool.getConnection(function (err, connection) { 
     logger.info("Begin Connection: " + (new Date().toString())); 
     if (err) { 
      logger.error(err.message); 
      return; 
     } 
     var bindvars = { 
      appId: '\'' + data.appId + '\'', 
      error: {dir: oracledb.BIND_OUT, type: oracledb.STRING, maxSize: 4000} 
     }; 

     logger.info("Bindvars Set: " + (new Date().toString())); 

     logger.info('***********************************'); 
     logger.info('Add Application - PUT'); 
     logger.info('App ID: ', bindvars.appId); 
     logger.info('***********************************'); 

     logger.info("Begin execute: " + (new Date().toString())); 

     connection.execute(
      "BEGIN local.pkg_app.p_ins_app_id(:appId, :error); END;", 
      bindvars, 
      function (err, result) { 
       logger.info(JSON.parse(result.outBinds.error)); 
       logger.info("End execute: " + (new Date().toString())); 
       if (err) { 
        logger.error(err.message); 
        doRelease(connection); 
        return; 
       } 

       logger.info("Send JSON: " + (new Date().toString())); 
       res.json(JSON.parse(result.outBinds.error)); 
       logger.info("JSON Sent: " + (new Date().toString())); 

       doRelease(connection); 
      }); 
    }); 
}); 

助けてください

declare 
v_app_id varchar2(10) := 'A123456'; 
o_error     VARCHAR2(100) := 'None'; 
Begin 
dbms_output.put_line('START'); 
local.PKG_APP.p_ins_app_id(v_app_id,o_error); 
dbms_output.put_line('END'); 
dbms_output.put_line(o_error); 
end; 

..私はSQL Developerで、このコードを試してみましたが、それは私のために正常に動作します。

+0

私はnode.jsをあまり使っていませんが、あなたの 'appId'バインド変数の余分な引用符が問題であることは間違いありません。 – kfinity

+0

しかし、引用符で囲んで変数として渡す必要があります。私は引用符を使わずにやり直して返信します。 – a2441918

+0

ありがとうございます。それはうまくいった。 ORA-01036:変数名/数値が不正です。\ n " – a2441918

答えて

0

引用符を削除して機能しました。

関連する問題