Nodejs:連線池連線mysql
阿新 • • 發佈:2018-12-12
OptPool.js
var mysql = require("mysql");//呼叫mysql模組 function OptPool() { this.flag = true;//是否連線過 this.pool = mysql.createPool({ host: 'localhost', user: 'root', password: 'root', database: 'test', port: '3306' }); this.getPool = function () { if (this.flag) { //監聽connection事件 this.pool.on('connection', function (connection) { connection.query("SET SESSION auto_increment_increment=1"); this.flag = false; }); } return this.pool; } }; module.exports = OptPool;
demo.js
/** * 安裝mysql支援====>npm install mysql * 安裝node.js的mysqlpool模組====> npm install -g node-mysql */ //連線池 var OptPool = require('./model/OptPool'); var optPool = new OptPool(); var pool = optPool.getPool(); //從連線池中獲取一個連線 pool.getConnection(function (err, conn) { //插入 var sql = "INSERT INTO `test`.`user` (`username`, `pwd`) VALUES (?,?);"; var param = ['jack', '123']; // conn.query(sql, param, function (err, rs) { // if (err) { // console.log("insert err:", err.message); // return; // } // console.log('insert success'); // conn.release(); // }); //查詢 $sql = "select * from user;"; conn.query($sql, function (err, rs) { if (err) { console.log("query---" + err); return; } for (var i = 0; i < rs.length; i++) { console.log(rs[i].username); } conn.release();//釋放連線池 }) });