Я пишу класс для работы с базой данных. БД MYSQL. Все работает, но только проблема с подключением. С каждым вызовом SELECT или другим действием с базой создается новое подключение и все быстро падает из за большого количества подключений. Пробовал объявить переменную connection глобально, но ничего не выходит.
let express = require("express");
let app = express();
let mysql = require('async-mysql');
app.get('/', function (req, res) {
new DB('id','users','email','biba@yandex.ru',null).select().then(rows=>console.log(rows));
});
class DB {
constructor(column,table,indefName,indef,data,query) {
if(data!=null){
if(typeof data !="string"){
for(var i=0;i<data.length;i++){
data[i] = "'"+data[i]+"'";
}
}
else{
data = "'"+data+"'";
}
}
this.column = column;
this.table = table;
this.indef = "'"+indef+"'";
this.indefName = indefName;
this.data = data;
this.query = query;
};
async select() {
let connection = await mysql.connect({
host : '127.0.0.1',
port : '3306',
database : 'heano',
user : 'root',
password : '1234',
charset : 'utf8'
});
let rows = await connection.query("SELECT "+this.column+" FROM "+this.table+" WHERE "+this.indefName+"="+this.indef);
return rows;
};
};
let server = app.listen(2800, () => console.log("Работа пошла"));