IT 관련,,/중요문자 적어두기

[node.js/개발]mysql 연동하기(입력, 조회하기)

IT깡패's 2020. 6. 6. 12:54
728x90
반응형
SMALL

안녕하세요~ㅎㅎ

요번 내용은 node.js로 mysql을 연동하는 방법에 대해서 알아보겠습니다~ㅎㅎ

제가 참고하는 블로그가 있는데요~

이걸 한번 참고해서 만들어보았습니다.

 

제가 만든 DB 내용은 아래와 같습니다.

Database 명 : nodejs

Table 명 : member

필드 : id, name, pwd

 

그리고 npm을 이용해 mysql 모듈을 설치 해야 합니다.(cmd창->npm install mysql)

* 저 같은 경우는 설치 후에도 연동이 되지 않았는데, 아래와 같이 설치하여 해결 하였습니다.

1. 실행 하려는 프로젝트 폴더 안으로 이동

2. 거기에 node_modules 라는 빈 폴더 생성

3. 그리고 설치를 진행 합니다.

 

이제 node.js를 통해 테이블 안에 데이터를 채워 넣겠습니다.

var mysql = require("mysql");
var connection = mysql.createConnection({
    host : "localhost",
    port : 3306,
    user : "root",
    password : "apmsetup",
    database : "nodejs"
});
var sqlQuery = "INSERT INTO member SET ?";
var post = {id : "kim3", pw : "1333", name : "noname"};
 
function callback(err,result){
    if(err){
        throw err
    }
    console.log("Insert Complete!");
    console.log(query.sql);
}
 
connection.connect();
var query = connection.query(sqlQuery, post, callback);
connection.end();

 

mysql 모듈을 불러오고, 접속에 필요한 정보를 넣어 줍니다.

그리고 사용할 쿼리 변수도 넣어 줍니다.

여기서 중요한 것은 connection.connect() 함수로 커넥션을 맺어 주고, connection.query() 함수로 쿼리문을 실행 해주는

것입니다.

쿼리문을 아시는 분이라면 이 함수의 인자값이 무엇을 뜻하는지 아실 겁니다.

그리고 할 일이 끝나면 connection.end()로 커넥션을 닫아 줍니다.

var mysql = require("mysql");
var connection = mysql.createConnection({
    host : "localhost",
    port : 3306,
    user : "root",
    password : "apmsetup",
    database : "nodejs"
});
var sqlQuery = "SELECT * FROM member";
 
function callback(err,rows, fields){
    if(err){
        throw err
    }    
    for(var i=0; i<rows.length;i++){
        console.log(rows[i].id+" | "+rows[i].pw+" | "+rows[i].name);
    }
}
 
connection.connect();
connection.query(sqlQuery, callback);
connection.end();

 

쿼리가 간결하고, 인자값이 따로 필요 없으니 소스는 더욱 간편합니다.

하지만 콜백 함수를 보면 rows, fields 인자 값이 보이시죠?

바로 각 로우에 필드 정보를 담고 있습니다.

그래서 select시 해당 값을 가져와 로그로 뿌리도록 for문을 사용 한 것 입니다.

이녀석을 실행 하면 아래와 같이 for문을 통해 리스트로 보여 줍니다.

요 리스트는 한번 알아서 해보시길 바랍니다~

 

여기까지 하고 mysql에서 select해보면 값이 들어온 것을 확인해보시기 바랍니다~

그럼 이제 node.js랑 mysql는 친하다는 걸 알 수 있을 것압니다~!!ㅎㅎㅎ

 

- 참고링크

node.js랑 mysql 연동하기 - https://m.blog.naver.com/seilius/130182908088

728x90
반응형
LIST