node中mysql連線封裝
阿新 • • 發佈:2018-12-11
封裝
const mysql=require('mysql');
// 建立連線池,效率更高,不需要每次操作資料庫都建立連線
var pool = mysql.createPool({
connectionLimit : 10,
host : 'localhost',
user : 'root',
password : 'root',
database : 'cms'
});
// 查詢返回的是陣列
// 增刪改返回的是物件
exports.query=(sqlStr)=> {
return new Promise((resolve,reject)=>{
// 從連線池裡面拿一個連線
pool.getConnection(function(err, connection) {
if(err){
return reject(err)
}
connection.query(sqlStr, (error, ...args) => {
// 操作結束儘早釋放連線
connection.release();
if (error) {
return reject(error)
};
resolve(...args)
});
});
})
}