execute query from shell

This commit is contained in:
Jan Prochazka
2020-12-08 18:51:00 +01:00
parent e0c91214fd
commit f8ee3b92cf
7 changed files with 97 additions and 8 deletions

View File

@@ -0,0 +1,19 @@
const goSplit = require('../utility/goSplit');
const requireEngineDriver = require('../utility/requireEngineDriver');
async function executeQuery({ connection, sql }) {
console.log(`Execute query ${sql}`);
const driver = requireEngineDriver(connection);
const pool = await driver.connect(connection);
console.log(`Connected.`);
for (const sqlItem of goSplit(sql)) {
console.log('Executing query', sqlItem);
await driver.query(pool, sqlItem);
}
console.log(`Query finished`);
}
module.exports = executeQuery;

View File

@@ -15,6 +15,8 @@ const finalizer = require('./finalizer');
const registerPlugins = require('./registerPlugins');
const requirePlugin = require('./requirePlugin');
const download = require('./download');
const executeQuery = require('./executeQuery');
const loadFile = require('./loadFile');
const dbgateApi = {
queryReader,
@@ -32,7 +34,8 @@ const dbgateApi = {
collectorWriter,
finalizer,
registerPlugins,
download,
executeQuery,
loadFile,
};
requirePlugin.initialize(dbgateApi);

View File

@@ -0,0 +1,10 @@
const fs = require('fs-extra');
const path = require('path');
const { filesdir } = require('../utility/directories');
async function loadFile(file) {
const text = await fs.readFile(path.join(filesdir(), file), { encoding: 'utf-8' });
return text;
}
module.exports = loadFile;