59 lines
1.8 KiB
JavaScript
59 lines
1.8 KiB
JavaScript
|
// @ts-check
|
||
|
|
||
|
////////////////////////////////////////
|
||
|
////////////////////////////////////////
|
||
|
////////////////////////////////////////
|
||
|
|
||
|
require("dotenv").config({ path: "./.env" });
|
||
|
const grabDbSSL = require("../utils/backend/grabDbSSL");
|
||
|
const mysql = require("serverless-mysql");
|
||
|
|
||
|
const connection = mysql({
|
||
|
config: {
|
||
|
host: process.env.DSQL_DB_HOST,
|
||
|
user: process.env.DB_USER,
|
||
|
password: process.env.DB_PASS,
|
||
|
// database: process.env.DSQL_DB_NAME,
|
||
|
charset: "utf8mb4",
|
||
|
ssl: grabDbSSL(),
|
||
|
},
|
||
|
});
|
||
|
|
||
|
//////////////////////////////////////////////////////////////////////////////////
|
||
|
//////////////////////////////////////////////////////////////////////////////////
|
||
|
//////////////////////////////////////////////////////////////////////////////////
|
||
|
//////////////////////////////////////////////////////////////////////////////////
|
||
|
//////////////////////////////////////////////////////////////////////////////////
|
||
|
//////////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
/**
|
||
|
* # Main DB Handler Function
|
||
|
* @async
|
||
|
*
|
||
|
* @param {object} params
|
||
|
* @param {string} params.query
|
||
|
* @param {string[] | object} [params.values]
|
||
|
* @param {string} [params.database]
|
||
|
*
|
||
|
* @returns {Promise<object|null>}
|
||
|
*/
|
||
|
(async () => {
|
||
|
/**
|
||
|
* Switch Database
|
||
|
*
|
||
|
* @description If a database is provided, switch to it
|
||
|
*/
|
||
|
try {
|
||
|
const result = await connection.query("SHOW DATABASES");
|
||
|
|
||
|
const parsedResults = JSON.parse(JSON.stringify(result));
|
||
|
|
||
|
console.log("parsedResults =>", parsedResults);
|
||
|
} catch (/** @type {any} */ error) {
|
||
|
console.log("Connection query ERROR =>", error.message);
|
||
|
} finally {
|
||
|
connection.end();
|
||
|
process.exit();
|
||
|
}
|
||
|
})();
|