db-mysql.js
952 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
'use strict';
const mysql = require('mysql');
const config = require('komodo-sdk/config');
const connectionLimit = config.mysql && config.mysql.pool_connection_limit ? config.mysql.pool_connection_limit : 0;
const pool = config.mysql ? mysql.createPool({
connectionLimit: connectionLimit,
host: config.mysql.host || 'localhost',
database: config.mysql.database || 'komodo',
user: config.mysql.user || 'komodo',
password: config.mysql.password
}) : null;
exports.pool = pool;
exports.query = pool.query;
exports.format = (sql, values) => {
return new Promise((resolve, reject) => {
if (!pool) {
reject('Missing DB config');
return;
}
pool.getConnection((err, connection) => {
if (err) {
reject(err);
return;
}
resolve(connection.format(sql, values));
connection.release();
});
})
}