bun-mariadb/dist/lib/mariadb/db-sql.js

46 lines
1.2 KiB
JavaScript

import dbHandler from "../db-handler";
export default async function DbSQL({ sql, values }) {
try {
const trimmedSql = sql.trim();
const isSelect = trimmedSql.match(/^select/i);
const res = await dbHandler({
query: trimmedSql,
values: values,
});
if (!res.success) {
return {
success: false,
msg: "Database query failed",
debug: {
sqlObj: {
sql: trimmedSql,
values,
},
sql,
},
};
}
const payload = isSelect ? (res.payload || []) : undefined;
const single_res = isSelect ? payload?.[0] : res.single_res;
const singleRaw = res.single_res;
return {
success: true,
payload,
single_res,
debug: {
sqlObj: {
sql: trimmedSql,
values,
},
sql,
},
};
}
catch (error) {
return {
success: false,
error: error.message,
};
}
}