Notice
Recent Posts
Recent Comments
Link
투케이2K
100. (NodeJs) [Mac Os] [Oracle] : oracledb 모듈 사용해 오라클 LENGTH 사용해 문자열 길이 출력 수행 본문
NodeJs
100. (NodeJs) [Mac Os] [Oracle] : oracledb 모듈 사용해 오라클 LENGTH 사용해 문자열 길이 출력 수행
투케이2K 2024. 1. 20. 16:57[개발 환경 설정]
개발 툴 : VS CODE
개발 언어 :NodeJs
[사전) 프로젝트 설정 방법]
[app.js : 소스 코드]
// ----------------------------------------------------------------------------------------------
// ---------------------------------------
// [모듈 추가]
// ---------------------------------------
const express = require('express')
const app = express()
// ---------------------------------------
// [모듈 추가]
// ---------------------------------------
app.set('view engine', 'ejs') // [Page] : [Render]
app.set('views', './views') // [Page] : [Render]
// ---------------------------------------
// [모듈 추가]
// ---------------------------------------
var bodyParser = require('body-parser'); // [body-parser 사용]
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());
// ---------------------------------------
// [모듈 추가]
// ---------------------------------------
var nocache = require('nocache'); // [nocache 사용]
app.use(nocache());
// ---------------------------------------
// [모듈 추가]
// ---------------------------------------
const oracledb = require('oracledb');
oracledb.autoCommit = true; // [오토 커밋 설정]
oracledb.outFormat = oracledb.OUT_FORMAT_OBJECT;
const config = { // [DB 접속 정보]
user: "ADMIN",
password: "admin#5678",
connectString: "105.78.166.205:1521/ORADB"
};
// ----------------------------------------------------------------------------------------------
// [Get] : Path = [/select] : http://localhost:3000/select
app.get('/select', async (req,res) => {
console.log("")
console.log("==============================================================================")
console.log("[Server] :: [App] :: [Path = /select] :: [Start]")
console.log("==============================================================================")
console.log("")
var resData = ""
let connection
try {
connection = await oracledb.getConnection(config)
// [쿼리 정의]
let query = "SELECT T_NAME, LENGTH(T_NAME) AS 이름길이 "
+ "FROM TEST_USER "
+ "WHERE ROWNUM <= 5 "
await connection.execute(query, function(err,result){
if(err){
resData = "select error - " + err.message // [리턴 변수에 삽입]
}else{
resData = result.rows // [리턴 변수에 삽입]
}
});
} catch (error) {
resData = error.message // [리턴 변수에 삽입]
} finally {
if (connection) { // [연결 종료]
try {
await connection.close()
} catch (error) {}
}
res.status(200).send({"result" : resData}); // [http 반환]
}
});
// ----------------------------------------------------------------------------------------------
// [Server] : [Start]
//*
app.listen(3000, function () {
console.log("")
console.log("==============================================================================")
console.log("[Server] :: [Port = 3000] :: [Start]")
console.log("==============================================================================")
console.log("")
})
// */
// ----------------------------------------------------------------------------------------------
[결과 출력]
반응형
'NodeJs' 카테고리의 다른 글
Comments