0.1.1•Updated 2 months ago
import { Pool, type QueryObjectResult } from 'jsr:@db/postgres';
import Environment from "../modules/environment.ts";
const { options, POOL_COUNT } = Environment;
const pool = new Pool(options, POOL_COUNT, true);
const connection = await pool.connect();
export class Postgres {
private constructor() {}
static async query<T = unknown>(clause: string, args?: unknown[]): Promise<QueryObjectResult<T> | { rows: [], rowCount: 0 }> {
try {
return await connection.queryObject<T>(clause, args);
// deno-lint-ignore no-explicit-any
} catch (e: any) {
console.error(clause, args);
console.warn(e.message);
console.warn(e.stack);
return { rows: [], rowCount: 0 };
}
}
}