Added functioning PRAGMA support

This commit is contained in:
Ben Ashton 2021-03-16 09:53:37 -07:00
parent 35de949788
commit 2e1e28cfc9

View File

@ -22,17 +22,41 @@ export class QueryWrapper {
execute(db) { execute(db) {
if (this.isAnyOf("INSERT", "UPDATE", "DELETE")) { if (this.isAnyOf("INSERT", "UPDATE", "DELETE")) {
return this.executeRun(db); return this.executeRun(db);
} else if (this.isAnyOf("PRAGMA")) {
return this.executeGet(db);
} else { } else {
return this.executeAll(db); return this.executeAll(db);
} }
} }
executeGet(db) {
return new Promise((resolve, reject) => {
const self = this;
log(this.sql);
db.get(this.sql, ...this.args, function (err, row) {
if (err) {
reject(NodeAdapterError.from(err));
return;
}
const result = {};
if (row) {
result.rows = [row];
}
resolve(ResponseWrapper.success(result));
});
});
}
executeRun(db) { executeRun(db) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
const self = this; const self = this;
log(this.sql); log(this.sql);
db.run(this.sql, ...this.args, function (err) { db.get(this.sql, ...this.args, function (err) {
if (err) { if (err) {
reject(NodeAdapterError.from(err)); reject(NodeAdapterError.from(err));
return; return;