서버 사이드 자바스크립트를 이용해서 mysql 을 제어하는 방법에 대해서 알아볼 것이다.

자바스크립트로 어떻게 MySQL 을 제어하는지 먼저 알아볼 것이다.

사용자가 저장한 데이터를 서버에 저장하고, 사용자가 원하는 정보를 서버에서 가져오는 것을 배웠었는데,

데이터 베이스 시스템을 이용해서 웹을 만드는 과정을 최종적으로 배울 것이다.

MySQL 을 자바스크립트를 이용해서 조작하는 방법으로 많이 사용하는 것은 'node-mysql'이다.

npm install --save node-mysql 을 이전에 사용했었던, dev 폴더에 있는 server_side_javascript 폴더에서 설치해준다.

설치를 완료했다면, 이제 node-mysql 에 대해서 알아보기 위해서 관련된 깃 헙 사이트로 접근한다.

mysqljs/mysql

서버와 클라이언트는 상대적인 개념이다.

서버와 웹 개발자에서의 관계는 서버가 '서버' 개발자가 '클라이언트'에 해당하는데, 고객과 개발자의 관계에서는 고객이 '클라이언트', 개발자가 '서버'가 된다.

글을 천천히 보면, 소개 부분에 있는 코드를 확인해보도록 한다.

(database_mysql.js)

var mysql      = require('mysql');
// mysql객체의 createConnection 이라는 메소드를 호출하면서,
// 해당 요소들을 인자로 담는다.
// 소스코드에는 개인정보를 입력하면 안된다. 별도 파일로 빼서 사용해야한다.
var conn = mysql.createConnection({
  host     : 'localhost',
  user     : 'root',
  password : '111111',
  port: '3306',
  database : 'o2'
});
// 접속을 한다.
conn.connect();
var sql = "SELECT * FROM topic";
// 에러가 있으면, error 에 값이 들어간다.
// 에러가 없으면, results 와 fields 를 보여준다.
// results는, 배열이고 각각의 값은 행 하나를 의미한다.
// fields에는, 보통 컬럼을 의미한다. 어떠한 컬럼이 존재하고 상세한 정보를 제공한다.
conn.query(sql, function (error, results, fields) {
   if (error) {
    console.log(error);
  }else{
    console.log('results', results);
    console.log('fields', fields);
  }
 });
// 접속을 끊는다.
conn.end();