Node.js Mysql

 

MySQL은 오픈 소스로 제공되는 관계형 데이터베이스 관리 시스템(RDBMS)이다.
APM(Apache-PHP-MySQL) 플랫폼의 데이터베이스 구성체로 작동된다.
MySQL은 GPL/Commercial License의 듀얼 라이선스가 적용된다.

본 포스팅에서는 mysql의 CRUD(Create, Read, Update, Delete) 작업은 다루지 않는다.
만약 CRUD작업을 이해하지 못했더라면 먼저, 그 부분을 구글링 등을 통해 이해 및 습득추천.

이번 포스팅에서는 node.js를 mysql에 연동하고 데이터 삽입 및 조회하는법을 다룬다.
send me email if you have any questions.


MySQL모듈 install 및 데이터 입/출력

1. 디렉터리 생성
$ mkdir database

2. 생성 디렉터리로 이동 후 npm init진행
$ cd database
$ npm init

3. mysql모듈 설치
$ npm install mysql

4. 데이터베이스에 테이블 생성
테이블 구조

number ssid dBm
1.. APname… RSSI…

5. main.js 코드작성

"use strict";

const mysql = require("mysql");

const connection = mysql.createConnection({ //연결할 DB정의
    host : "000.000.000.000", // 연결할 host ip 주소
    user : "user", // DB 사용자 이름
    password : "", // 사용자 패스워드
    database : "test" // 사용할 DB 이름
});

let sql; // DBMS로 전송할 SQL문 (CRUD작업)
let insert_params;

connection.connect();

// 기존에 User테이블에 저장된 데이터 확인
sql = "SELECT * FROM data";
connection.query(sql, function(err, rows, fields){
if(err) console.log(err);
console.log(rows);
});

// 새로운 데이터 삽입
sql = "INSERT INTO data(number, ssid, dBm) VALUES(?,?,?)"
insert_params = [,"inlab_5G", "-38"];

connection.query(sql, insert_params, function(err, rows, fields){
    if(err) console.log(err);
    else console.log("insert success");
});


// User테이블에 저장된 모든 데이터 확인
sql = "SELECT * FROM data";

connection.query(sql, function(err, rows, fields){
    if(err) console.log(err);
    console.log(rows);
});
connection.end();

실행결과


main.js 실행결과
그림1
소스코드에서 전달한 파라미터가 database에 저장됨을 확인할 수 있다.

DB확인
그림2
main.js의 실행으로 새로운 데이터가 추가됨을 확인할 수 있다.