sitelink1 https://youtu.be/SUjOvUbKunI 
sitelink2  
sitelink3  
extra_vars4  
extra_vars5  
extra_vars6  

MySQL 모듈 사용 (MySQL2 모듈과는 다름)

 

* dbConnection.js

var mysql = require('mysql');

 

var dbConfig = {

   host: 'localhost',

   user: 'root',

   password: '1234',

   port: 3306,

   database: 'Moviest'

};

 

var pool = mysql.createPool(dbConfig);

 

module.exports = pool;

 

* select.js

var pool = require('./dbConnection');

 

pool.getConnection(function(err, conn) {

   if ( err ) {

      console.error('Error', err);

      return;

   }

   

   var sql = 'SELECT * FROM movies';

   conn.query(sql, function(err, results) {

      if ( err ) {

         console.error('Error', err);

         return;

      }

      

      for ( var i = 0 ; i < results.length ; i++ ) {

         var movieInfo = results[i];

         console.log('제목 : ' + movieInfo.title + ' 감독 : ' + movieInfo.director);

      }

      

      conn.release();      

   });

});

 

* insert.js

var pool = require('./dbConnection');

 

pool.getConnection(function(err, conn) {

   var sql = 'INSERT INTO movies (title, director, year) VALUES ("인셉션", "크리스토퍼 놀란", 2010);';

   conn.query(sql,function(err, results) {

      if ( err ) {

         console.error('INSERT Error', err);

      }

      else {

         console.log('results : ', results);

      }

   });

      

   var sql2 = 'INSERT INTO movies (title, director, year) VALUES (?, ?, ?);';

   conn.query(sql2, ['인터스텔라', '크리스토퍼 놀란', 2015],function(err, results) {

      if ( err ) {

         console.error('INSERT Error', err);

      }

      else {

         console.log('results : ', results);

      }

   });   

   

   var data = {

      title : '메멘토',

      director : '크리스토퍼 놀란',

      year : 2000

   };

   var sql3 = 'INSERT INTO movies SET ?';

   conn.query(sql3, data, function(err, results) {

      if ( err ) {

         console.error('INSERT Error', err);

      }

      else {

         console.log('results : ', results);

      }

   });

   

   // 비동기의 연속이므로 release를 호출할 곳이 적당하지 않다.

   // conn.release();

});

 

 

 

 

 

번호 제목 글쓴이 날짜 조회 수
56 node js + 아두이노 연동 제어 실험 file 황제낙엽 2017.01.02 3149
55 여러 개의 데이터 베이스 연결을 동시에 관리하는 PoolCluster 황제낙엽 2021.01.16 2396
54 빠르게 훝어 보는 node.js - #4 웹개발 프레임웍 Express 1/2 file 황제낙엽 2016.08.03 1055
53 Node.js 에서 Bulk INSERT 를 하는 방법 (multi insert) 황제낙엽 2021.02.02 997
52 Node.js란? 황제낙엽 2012.11.15 803
51 [connection과 pool-03] mysql.createPool 과 connection.query 황제낙엽 2021.01.27 628
50 RESTful API 황제낙엽 2020.07.13 572
49 빠르게 훝어 보는 node.js - #3 Event,Module,NPM file 황제낙엽 2016.08.03 409
48 express-sse 모듈과 EventEmitter 황제낙엽 2020.09.20 379
47 mysql, mysql2 모듈 버전 비교 황제낙엽 2021.01.31 342
46 express 4.16부터는 body-parser를 내장한다 황제낙엽 2020.12.06 337
45 빠르게 훝어보는 node.js - #1node.js 소개 및 내부구조 file 황제낙엽 2016.08.03 305
44 urlencode : request params의 한글 처리 황제낙엽 2020.12.06 205
43 [Deprecated] request / request 황제낙엽 2020.08.26 202
42 Node.js , NPM 관련 명령어 정리 황제낙엽 2020.09.10 198
41 mysql basic (mysql 설치, 접속, 조회) 황제낙엽 2021.01.12 186
40 node js 학습 링크 목록 황제낙엽 2017.01.05 171
39 빠르게 훝어 보는 node.js - #5 웹개발 프레임웍 Express 2/2 file 황제낙엽 2016.08.03 166
38 [connection과 pool-04] connection pool 에서의 Transaction을 이용한 commit 과 rollback 황제낙엽 2021.01.27 165
37 google oauth 인증 (구글 로그인) file 황제낙엽 2020.11.12 158