Update SQL handlers debugging

This commit is contained in:
2026-04-05 07:19:26 +01:00
parent 685d47d91f
commit b3bd5866e6
9 changed files with 72 additions and 32 deletions
+11 -5
View File
@@ -2,6 +2,7 @@ import DbClient from ".";
import _ from "lodash";
import sqlGenerator from "../../utils/sql-generator";
export default async function DbDelete({ table, query, targetId, }) {
let sqlObj = null;
try {
let finalQuery = query || {};
if (targetId) {
@@ -13,14 +14,14 @@ export default async function DbDelete({ table, query, targetId, }) {
},
});
}
const sqlQueryObj = sqlGenerator({
sqlObj = sqlGenerator({
tableName: table,
genObject: finalQuery,
});
const whereClause = sqlQueryObj.string.match(/WHERE .*/)?.[0];
const whereClause = sqlObj.string.match(/WHERE .*/)?.[0];
if (whereClause) {
let sql = `DELETE FROM ${table} ${whereClause}`;
const res = DbClient.run(sql, sqlQueryObj.values);
const res = DbClient.run(sql, sqlObj.values);
return {
success: Boolean(res.changes),
postInsertReturn: {
@@ -28,8 +29,7 @@ export default async function DbDelete({ table, query, targetId, }) {
insertId: Number(res.lastInsertRowid),
},
debug: {
sql,
values: sqlQueryObj.values,
sqlObj,
},
};
}
@@ -37,6 +37,9 @@ export default async function DbDelete({ table, query, targetId, }) {
return {
success: false,
msg: `No WHERE clause`,
debug: {
sqlObj,
},
};
}
}
@@ -44,6 +47,9 @@ export default async function DbDelete({ table, query, targetId, }) {
return {
success: false,
error: error.message,
debug: {
sqlObj,
},
};
}
}
+9 -4
View File
@@ -1,16 +1,18 @@
import DbClient from ".";
import sqlInsertGenerator from "../../utils/sql-insert-generator";
export default async function DbInsert({ table, data }) {
let sqlObj = null;
try {
const finalData = data.map((d) => ({
...d,
created_at: Date.now(),
updated_at: Date.now(),
}));
const sqlObj = sqlInsertGenerator({
tableName: table,
data: finalData,
});
sqlObj =
sqlInsertGenerator({
tableName: table,
data: finalData,
}) || null;
const res = DbClient.run(sqlObj?.query || "", sqlObj?.values || []);
return {
success: Boolean(Number(res.lastInsertRowid)),
@@ -27,6 +29,9 @@ export default async function DbInsert({ table, data }) {
return {
success: false,
error: error.message,
debug: {
sqlObj,
},
};
}
}
+5 -1
View File
@@ -3,6 +3,7 @@ import DbClient from ".";
import _ from "lodash";
import sqlGenerator from "../../utils/sql-generator";
export default async function DbSelect({ table, query, count, targetId, }) {
let sqlObj = null;
try {
let finalQuery = query || {};
if (targetId) {
@@ -14,7 +15,7 @@ export default async function DbSelect({ table, query, count, targetId, }) {
},
});
}
const sqlObj = sqlGenerator({
sqlObj = sqlGenerator({
tableName: table,
genObject: finalQuery,
count,
@@ -43,6 +44,9 @@ export default async function DbSelect({ table, query, count, targetId, }) {
return {
success: false,
error: error.message,
debug: {
sqlObj,
},
};
}
}
+8 -5
View File
@@ -2,6 +2,7 @@ import DbClient from ".";
import _ from "lodash";
import sqlGenerator from "../../utils/sql-generator";
export default async function DbUpdate({ table, data, query, targetId, }) {
let sqlObj = null;
try {
let finalQuery = query || {};
if (targetId) {
@@ -13,12 +14,12 @@ export default async function DbUpdate({ table, data, query, targetId, }) {
},
});
}
const sqlQueryObj = sqlGenerator({
sqlObj = sqlGenerator({
tableName: table,
genObject: finalQuery,
});
let values = [];
const whereClause = sqlQueryObj.string.match(/WHERE .*/)?.[0];
const whereClause = sqlObj.string.match(/WHERE .*/)?.[0];
if (whereClause) {
let sql = `UPDATE ${table} SET`;
const finalData = {
@@ -38,7 +39,7 @@ export default async function DbUpdate({ table, data, query, targetId, }) {
}
}
sql += ` ${whereClause}`;
values = [...values, ...sqlQueryObj.values];
values = [...values, ...sqlObj.values];
const res = DbClient.run(sql, values);
return {
success: Boolean(res.changes),
@@ -47,8 +48,7 @@ export default async function DbUpdate({ table, data, query, targetId, }) {
insertId: Number(res.lastInsertRowid),
},
debug: {
sql,
values,
sqlObj,
},
};
}
@@ -63,6 +63,9 @@ export default async function DbUpdate({ table, data, query, targetId, }) {
return {
success: false,
error: error.message,
debug: {
sqlObj,
},
};
}
}