UNPKG

1.05 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3const fs = require("fs-extra");
4const sql = require("mssql");
5async function executeSqlFile(params, pool) {
6 const { filepath, } = params;
7 const sqlStr = await fs.readFile(filepath, 'utf8');
8 const batchStrings = sqlStr.split(/^go\r?\n?/gmi);
9 const request = await pool.request();
10 return Promise.all(batchStrings.map(str => {
11 return request.batch(str);
12 }))
13 .then(allResults => {
14 return allResults.reduce((acc, res) => {
15 acc.recordsets = acc.recordsets.concat(res.recordsets);
16 acc.rowsAffected = acc.rowsAffected.concat(res.rowsAffected);
17 return acc;
18 }, {
19 recordsets: [],
20 rowsAffected: [],
21 });
22 });
23}
24exports.executeSqlFile = executeSqlFile;
25async function createConnection(config) {
26 return new sql.ConnectionPool(config)
27 .connect()
28 .catch(err => {
29 console.error(err);
30 });
31}
32exports.createConnection = createConnection;