Skip to main content

DBAdapter

Extends​

Implements​

Constructors​

Constructor​

new DBAdapter(): DBAdapter;

Returns​

DBAdapter

Inherited from​

BaseObserver.constructor

Accessors​

name​

Get Signature​

get abstract name(): string;
Returns​

string

Methods​

close()​

abstract close(): void | Promise<void>;

Returns​

void | Promise<void>


dispose()​

dispose(): void;

Returns​

void

Inherited from​

BaseObserver.dispose


execute()​

execute<T>(query, params?): Promise<QueryResult<T>>;

Execute a SQL write (INSERT/UPDATE/DELETE) query and optionally return results.

When using the default client-side JSON-based view system, the returned result's rowsAffected may be 0 for successful UPDATE and DELETE statements. Use a RETURNING clause and inspect result.rows when you need to confirm which rows changed.

Type Parameters​

Type Parameter
T

Parameters​

ParameterType
querystring
params?any[]

Returns​

Promise<QueryResult<T>>

The query result as an object with structured key-value pairs

Implementation of​

SqlExecutor.execute


executeBatch()​

executeBatch(query, params?): Promise<QueryResult<never>>;

Execute a write query (INSERT/UPDATE/DELETE) multiple times with each parameter set and optionally return results. This is faster than executing separately with each parameter set.

Parameters​

ParameterType
querystring
params?any[][]

Returns​

Promise<QueryResult<never>>

The query result

Implementation of​

SqlExecutor.executeBatch


executeRaw()​

executeRaw(query, params?): Promise<RawQueryResult>;

Execute a SQL write (INSERT/UPDATE/DELETE) query directly on the database without any PowerSync processing. This bypasses certain PowerSync abstractions and is useful for accessing the raw database results.

Parameters​

ParameterType
querystring
params?any[]

Returns​

Promise<RawQueryResult>

The RawQueryResult representing each row as an array.

Implementation of​

SqlExecutor.executeRaw


get()​

get<T>(sql, parameters?): Promise<T>;

Execute a read-only query and return the first result, error if the ResultSet is empty.

Type Parameters​

Type Parameter
T

Parameters​

ParameterTypeDescription
sqlstringThe SQL query to execute
parameters?any[]Optional array of parameters to bind to the query

Returns​

Promise<T>

The first result matching the query

Throws​

Error if no rows are returned

Implementation of​

DBGetUtils.get


getAll()​

getAll<T>(sql, parameters?): Promise<T[]>;

Execute a read-only query and return results.

Type Parameters​

Type Parameter
T

Parameters​

ParameterTypeDescription
sqlstringThe SQL query to execute
parameters?any[]Optional array of parameters to bind to the query

Returns​

Promise<T[]>

An array of results

Implementation of​

DBGetUtils.getAll


getOptional()​

getOptional<T>(sql, parameters?): Promise<T | null>;

Execute a read-only query and return the first result, or null if the ResultSet is empty.

Type Parameters​

Type Parameter
T

Parameters​

ParameterTypeDescription
sqlstringThe SQL query to execute
parameters?any[]Optional array of parameters to bind to the query

Returns​

Promise<T | null>

The first result if found, or null if no results are returned

Implementation of​

DBGetUtils.getOptional


iterateAsyncListeners()​

iterateAsyncListeners(cb): Promise<void>;

Parameters​

ParameterType
cb(listener) => Promise<any>

Returns​

Promise<void>

Inherited from​

BaseObserver.iterateAsyncListeners


iterateListeners()​

iterateListeners(cb): void;

Parameters​

ParameterType
cb(listener) => any

Returns​

void

Inherited from​

BaseObserver.iterateListeners


readLock()​

abstract readLock<T>(fn, options?): Promise<T>;

Type Parameters​

Type Parameter
T

Parameters​

ParameterType
fn(tx) => Promise<T>
options?DBLockOptions

Returns​

Promise<T>


readTransaction()​

readTransaction<T>(fn, options?): Promise<T>;

Type Parameters​

Type Parameter
T

Parameters​

ParameterType
fn(tx) => Promise<T>
options?DBLockOptions

Returns​

Promise<T>


refreshSchema()​

abstract refreshSchema(): Promise<void>;

This method refreshes the schema information across all connections. This is for advanced use cases, and should generally not be needed.

Returns​

Promise<void>


registerListener()​

registerListener(listener): () => void;

Register a listener for updates to the PowerSync client.

Parameters​

ParameterType
listenerPartial<T>

Returns​

() => void

Inherited from​

BaseObserver.registerListener


writeLock()​

abstract writeLock<T>(fn, options?): Promise<T>;

Type Parameters​

Type Parameter
T

Parameters​

ParameterType
fn(tx) => Promise<T>
options?DBLockOptions

Returns​

Promise<T>


writeTransaction()​

writeTransaction<T>(fn, options?): Promise<T>;

Type Parameters​

Type Parameter
T

Parameters​

ParameterType
fn(tx) => Promise<T>
options?DBLockOptions

Returns​

Promise<T>