39 lines
923 B
JavaScript
39 lines
923 B
JavaScript
const mysql = require("mysql2");
|
|
const errors = require("../../node_modules/mysql2/lib/constants/errors");
|
|
const pomelo = require("pomelo");
|
|
const dbconfig = pomelo.app.get("mysql");
|
|
|
|
class Database {
|
|
constructor(config) {
|
|
this.pool = mysql.createPool(config);
|
|
}
|
|
|
|
query(sql, values) {
|
|
return new Promise((resolve, reject) => {
|
|
this.pool.getConnection((err, connection) => {
|
|
if (err) {
|
|
reject(err);
|
|
} else {
|
|
connection.query(sql, values, (err, rows) => {
|
|
if (err) {
|
|
reject(err);
|
|
} else {
|
|
resolve(rows);
|
|
}
|
|
connection.release();
|
|
});
|
|
}
|
|
});
|
|
});
|
|
}
|
|
}
|
|
|
|
const guildDB = new Database(dbconfig.guild);
|
|
const gameDB = new Database(dbconfig.game);
|
|
|
|
module.exports = {
|
|
query_guild: guildDB.query.bind(guildDB),
|
|
query_game: gameDB.query.bind(gameDB),
|
|
errors: errors,
|
|
};
|