-
Node.js | Express + MariaDB 연동하기 (DB연동, CRUD)▼ Backend/노드JS (Node.js) 2021. 7. 8. 14:20반응형
MariaDB 설치 후 진행 바랍니다.
1. 프로젝트 경로에서 명령어 입력
npm install mysql --save
2. package.json (/프로젝트 경로/package.json)
mysql이 추가되었는지 확인3. maria.js (/프로젝트 경로/database/connect/maria.js)
database/connect 폴더는 원래 없는 폴더 이므로 새로 생성한다.
접속 정보 입력const maria = require('mysql'); const conn = maria.createConnection({ host:'localhost', port:3306, user:'user', password:'pwd', database:'db name' }); module.exports = conn;
4. app.js (/프로젝트 경로/app.js)
var app = express(); 아래에 connect 코드 추가// mariaDB connect const maria = require('./database/connect/maria'); maria.connect();
5. index.js (/프로젝트 경로/routes/index.js)
CRUD 테스트를 위해 router.get으로 url을 매핑한다.
CREATE, DROP, INSERT, SELECT, UPDATE, DELETEvar express = require('express'); var router = express.Router(); // require maria.js const maria = require('../database/connect/maria'); /* GET home page. */ router.get('/', function(req, res, next) { res.render('index', { title: 'Express' }); }); router.get('/create', function(req, res) { maria.query('CREATE TABLE DEPARTMENT (' +'DEPART_CODE INT(11) NOT NULL,' +'NAME VARCHAR(200) NULL DEFAULT NULL COLLATE utf8mb3_general_ci,' +'PRIMARY KEY (DEPART_CODE) USING BTREE)', function(err, rows, fields) { if(!err) { res.send(rows); // responses send rows } else { console.log("err : " + err); res.send(err); // response send err } }); }); router.get('/drop', function(req, res) { maria.query('DROP TABLE DEPARTMENT', function(err, rows, fields) { if(!err) { res.send(rows); // responses send rows } else { console.log("err : " + err); res.send(err); // response send err } }); }); router.get('/insert', function(req, res) { maria.query('INSERT INTO DEPARTMENT(DEPART_CODE,NAME) VALUES(5001,"ENGLISH")', function(err, rows, fields) { if(!err) { res.send(rows); // responses send rows } else { console.log("err : " + err); res.send(err); // response send err } }); }); router.get('/select', function(req, res) { maria.query('SELECT * FROM DEPARTMENT', function(err, rows, fields) { if(!err) { res.send(rows); // responses send rows } else { console.log("err : " + err); res.send(err); // response send err } }); }); router.get('/update', function(req, res) { maria.query('UPDATE DEPARTMENT SET NAME="UPD ENG" WHERE DEPART_CODE=5001', function(err, rows, fields) { if(!err) { res.send(rows); // responses send rows } else { console.log("err : " + err); res.send(err); // response send err } }); }); router.get('/delete', function(req, res) { maria.query('DELETE FROM DEPARTMENT WHERE DEPART_CODE=5001', function(err, rows, fields) { if(!err) { res.send(rows); // responses send rows } else { console.log("err : " + err); res.send(err); // response send err } }); }); module.exports = router;
6. 서버 시작
npm start
결과
create
insert
select
update
delete
drop
반응형'▼ Backend > 노드JS (Node.js)' 카테고리의 다른 글
Node.js | 초간단 API 서버 만들기 - 2 (0) 2021.07.06 Node.js | 초간단 API 서버 만들기 - 1 (0) 2021.07.06 Node.js | 윈도우 Node.js 설치하기 (0) 2021.07.06