무작정 개발.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 설정 파일)

// 오라클 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)


//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 연결에 대해 정리를 마치겠다.

반응형

블로그의 정보

무작정 개발

무작정 개발

활동하기