interface DBAdapter

Database adapter interface for DB-agnostic operations.

Methods

query<T extends Record<string, any> = Record<string, any>>(
sql: string,
params?: unknown[]
): Promise<T[]>

Execute a SELECT query and return rows.

execute(
sql: string,
params?: unknown[]
): Promise<number>

Execute INSERT/UPDATE/DELETE and return affected row count.

executeBatch(
sql: string,
paramsArray: unknown[][]
): Promise<number[]>

Execute multiple commands in a batch. Implementation should optimize this if possible (e.g. using prepared statements or multi-row inserts).

close(): Promise<void>

Release the connection back to its source (e.g., pool).

optional
stream<T extends Record<string, any> = Record<string, any>>(
sql: string,
params?: unknown[]
): AsyncIterable<T>

Stream rows from a SELECT query using a cursor.

Usage

import { type DBAdapter } from ".";