Sangil's blog

https://github.com/ChoiSangIl Admin

node Js oracle procedure(프로시저) 실행 & DPI-1002 오류 DEV / SERVER

2020-02-25 posted by sang12


node Js에서 오라클로 프로시저를 실행하려고 하는데 해당 오류가 발생. DPI-1002: invalid dpiConn handle
커넥션 맺고 하는 부분은 아실거라 생각하고 생략!

문제의코드

var params = {
   P_RETURN:  { dir: oracledb.BIND_OUT }
};

await connection.execute( "CALL SP_TEST_CHOI(:P_RETURN)",
  params,
  function (err, ret) {
    if (err) {
      console.log('failed', err);
    } else {
      console.log(ret);
    }
  }
)

수정한 코드1

var params = {
   P_RETURN:  { dir: oracledb.BIND_OUT }
};

await new Promise (resolve => 
    connection.execute( "CALL SP_TEST_CHOI(:P_RETURN)",
    params,
    function (err, ret) {
       if (err) {
           console.log('failed', err);
       } else {
       console.log(ret);
       }
    }
));

- 수정한코드 최종 async/await으로 변경


var params = {
  P_RETURN:  { dir: oracledb.BIND_OUT }
};

let result = await connection.execute(
  'CALL HANMISHOP.SP_TEST_CHOI(:P_RETURN)',
  params
)
console.log(result);

#노드 oracle 프로시저 실행 #node 프로시저 실행 #node oracle 프로시저 #node oracle procedure 실행 #node oracle procedure await
REPLY