무작정 개발.Vlog

[node.js] node.js + Oracle DB 연결하기

by 무작정 개발
반응형
2022.04.06(72일 차)

 

이번에는 Node.js에 Oracle DB를 연결하는 방법에 대해 정리할 것이다.

이전에 오라클 DB에 대해 정리하였는데 자세한 내용은 이전 글 참고..

 

오라클 DB
오라클 DB

 

 

Node.js에 OracleDB 연결하기

 

1. Oracle 모듈 설치

  • 이전에 몽고 DB를 연결할 때처럼 Oracle 모듈을 설치해야 한다.
DatabaseExe 프로젝트 구조
DatabaseExe 프로젝트 구조

파일 탐색기에서 DatabaseExe 폴더 우클릭 클릭해서 cmdhire 클릭하면 cmd창이 열린다.

 npm install oracledb --save

 

2. 오라클 DB 연결 예제

  • 이전에 배운 MongoDB에서 사용했던 예제를 복사해서 수정할 것이다.

 

dbConfig.js - (오라클 DB 설정 파일)

javascript
// 오라클 DB 설정 파일
module.exports = {
user :process.env.NODE_ORACLEDB_USER || "suzi",
password :process.env.NODE_ORACLEDB_PASSWORD || "a123",
connectString :process.env.NODE_ORACLEDB_CONNECTIONSTRING || "localhost:1521/xe",
externalAuth :process.env.NODE_ORACLEDB_EXTERNALAUTH ? true : false
};

 

dbConn.js - (main)

javascript
//Oracle 사용하기
//npm install oracledb --save
var oracledb = require("oracledb");
var dbConfig = require("./dbConfig.js");
oracledb.autoCommit = true; //자동 커밋
oracledb.getConnection({
user:dbConfig.user,
password:dbConfig.password,
connectString:dbConfig.connectString
},
function(err,conn) {
if(err) {throw err;}
console.log("Oracle DB 연결 성공!!");
var sql;
//create
/*sql = "create table cuser (id varchar2(10), password varchar2(10),";
sql+= "name varchar2(10), age number)";
conn.execute(sql);
console.log("테이블 생성 완료!!");*/
//insert
sql = "insert into cuser values (:id,:pw,:name,:age)";
//데이터 한개 넣을 때
//binds = [["b123","123","suzi",27]];
//여러개 넣을 때는
/*binds = [
["c123","123","suzi",27],
["d123","123","suzi",27],
["e123","123","suzi",27]
];
var result = conn.executeMany(sql,binds,{}); // {} 함수
console.log("입력 완료!!");*/
//update
/*sql = "update cuser set password=:pw,name=:name,age=:age where id=:id";
conn.executeMany(sql,[["777","inna",30,"a123"]]);
console.log("수정 완료");*/
//delete
/*sql = "delete cuser where id=:id";
conn.execute(sql,["a123"]);
console.log("삭제 완료!!");*/
//select
sql = "select id,password,name,age from cuser";
conn.execute(sql,[],function(err,result) {
if(err) {throw err;}
console.log(result.rows);
doRelease(conn);
});
});
//DB 종료
function doRelease(conn) {
conn.release(function(err) {
if(err) {throw err;}
});
}

 

실행 화면

콘솔 화면
콘솔 화면

현재는 데이터 전체 검색만 살려놨고 insert, update, delete는 주석 처리해놨다.

주석을 해제하면 나머지 기능도 정삭적으로 작동한다.

 

이것으로 node.js + OracleDB 연결에 대해 정리를 마치겠다.

반응형
블로그의 프로필 사진

블로그의 정보

무작정 개발

무작정 개발

활동하기