Database adapter interface for DB-agnostic operations.
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.