UNPKG

@matthewbonig/rds-tools

Version:

A construct for working with RDS SQL servers

28 lines 3.55 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.MySqlProvider = void 0; // eslint-disable-next-line @typescript-eslint/no-require-imports const mysql = require('promise-mysql'); class MySqlProvider { constructor(props) { this.connectionPromise = mysql.createConnection({ host: props.host, user: props.username, port: props.port || 3306, password: props.password, database: props.databaseName || 'mysql', }); } async query(script) { if (!this.connection) { console.log('Connecting...'); this.connection = await this.connectionPromise; } console.log('Querying...'); let results = await this.connection.query(script); console.log('Results: ', JSON.stringify(results, null, 2)); return results; } } exports.MySqlProvider = MySqlProvider; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXlzcWwtcHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaGFuZGxlcnMvbXlzcWwtcHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsaUVBQWlFO0FBQ2pFLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQztBQUV2QyxNQUFhLGFBQWE7SUFHeEIsWUFBWSxLQUEyRztRQUNySCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDLGdCQUFnQixDQUFDO1lBQzlDLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixJQUFJLEVBQUUsS0FBSyxDQUFDLFFBQVE7WUFDcEIsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJLElBQUksSUFBSTtZQUN4QixRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVE7WUFDeEIsUUFBUSxFQUFFLEtBQUssQ0FBQyxZQUFZLElBQUksT0FBTztTQUN4QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFjO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ3BCLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDN0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztTQUNoRDtRQUNELE9BQU8sQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDM0IsSUFBSSxPQUFPLEdBQUcsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsRCxPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMzRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUF2QkQsc0NBdUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVByb3ZpZGVyIH0gZnJvbSAnLi9wcm92aWRlcic7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXJlcXVpcmUtaW1wb3J0c1xuY29uc3QgbXlzcWwgPSByZXF1aXJlKCdwcm9taXNlLW15c3FsJyk7XG5cbmV4cG9ydCBjbGFzcyBNeVNxbFByb3ZpZGVyIGltcGxlbWVudHMgSVByb3ZpZGVyIHtcbiAgcHJpdmF0ZSBjb25uZWN0aW9uOiBhbnk7XG4gIHByaXZhdGUgcmVhZG9ubHkgY29ubmVjdGlvblByb21pc2U6IFByb21pc2U8YW55PjtcbiAgY29uc3RydWN0b3IocHJvcHM6IHsgcGFzc3dvcmQ6IHN0cmluZzsgZGF0YWJhc2VOYW1lOiBzdHJpbmc7IHBvcnQ6IHN0cmluZyB8IHVuZGVmaW5lZDsgaG9zdDogc3RyaW5nOyB1c2VybmFtZTogc3RyaW5nIH0pIHtcbiAgICB0aGlzLmNvbm5lY3Rpb25Qcm9taXNlID0gbXlzcWwuY3JlYXRlQ29ubmVjdGlvbih7XG4gICAgICBob3N0OiBwcm9wcy5ob3N0LFxuICAgICAgdXNlcjogcHJvcHMudXNlcm5hbWUsXG4gICAgICBwb3J0OiBwcm9wcy5wb3J0IHx8IDMzMDYsXG4gICAgICBwYXNzd29yZDogcHJvcHMucGFzc3dvcmQsXG4gICAgICBkYXRhYmFzZTogcHJvcHMuZGF0YWJhc2VOYW1lIHx8ICdteXNxbCcsXG4gICAgfSk7XG4gIH1cblxuICBhc3luYyBxdWVyeShzY3JpcHQ6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgaWYgKCF0aGlzLmNvbm5lY3Rpb24pIHtcbiAgICAgIGNvbnNvbGUubG9nKCdDb25uZWN0aW5nLi4uJyk7XG4gICAgICB0aGlzLmNvbm5lY3Rpb24gPSBhd2FpdCB0aGlzLmNvbm5lY3Rpb25Qcm9taXNlO1xuICAgIH1cbiAgICBjb25zb2xlLmxvZygnUXVlcnlpbmcuLi4nKTtcbiAgICBsZXQgcmVzdWx0cyA9IGF3YWl0IHRoaXMuY29ubmVjdGlvbi5xdWVyeShzY3JpcHQpO1xuICAgIGNvbnNvbGUubG9nKCdSZXN1bHRzOiAnLCBKU09OLnN0cmluZ2lmeShyZXN1bHRzLCBudWxsLCAyKSk7XG4gICAgcmV0dXJuIHJlc3VsdHM7XG4gIH1cbn0iXX0=