PowerSyncDatabase
A PowerSync database which provides SQLite functionality which is automatically synced.
Example
export const db = new PowerSyncDatabase({
schema: AppSchema,
database: {
dbFilename: 'example.db'
}
});
Extends
Constructors
new PowerSyncDatabase()
new PowerSyncDatabase(options): PowerSyncDatabase
Parameters
Parameter | Type |
---|---|
options | WebPowerSyncDatabaseOptionsWithAdapter |
Returns
Overrides
AbstractPowerSyncDatabase
.constructor
new PowerSyncDatabase()
new PowerSyncDatabase(options): PowerSyncDatabase
Parameters
Parameter | Type |
---|---|
options | WebPowerSyncDatabaseOptionsWithOpenFactory |
Returns
Overrides
AbstractPowerSyncDatabase
.constructor
new PowerSyncDatabase()
new PowerSyncDatabase(options): PowerSyncDatabase
Parameters
Parameter | Type |
---|---|
options | WebPowerSyncDatabaseOptionsWithSettings |
Returns
Overrides
AbstractPowerSyncDatabase
.constructor
new PowerSyncDatabase()
new PowerSyncDatabase(options): PowerSyncDatabase
Parameters
Parameter | Type |
---|---|
options | WebPowerSyncDatabaseOptions |
Returns
Overrides
AbstractPowerSyncDatabase
.constructor
Properties
Property | Modifier | Type | Description | Inherited from |
---|---|---|---|---|
closed | public | boolean | Returns true if the connection is closed. | AbstractPowerSyncDatabase .closed |
currentStatus | public | SyncStatus | Current connection status. | AbstractPowerSyncDatabase .currentStatus |
ready | public | boolean | - | AbstractPowerSyncDatabase .ready |
sdkVersion | public | string | - | AbstractPowerSyncDatabase .sdkVersion |
syncStreamImplementation? | public | StreamingSyncImplementation | - | AbstractPowerSyncDatabase .syncStreamImplementation |
SHARED_MUTEX | static | Mutex | - | - |
Accessors
connected
Get Signature
get connected(): boolean
Whether a connection to the PowerSync service is currently open.
Returns
boolean
Inherited from
AbstractPowerSyncDatabase
.connected
connecting
Get Signature
get connecting(): boolean
Returns
boolean
Inherited from
AbstractPowerSyncDatabase
.connecting
database
Get Signature
get database(): DBAdapter
The underlying database.
For the most part, behavior is the same whether querying on the underlying database, or on AbstractPowerSyncDatabase.
Returns
Inherited from
AbstractPowerSyncDatabase
.database
logger
Get Signature
get logger(): ILogger
Returns
ILogger
Inherited from
AbstractPowerSyncDatabase
.logger
schema
Get Signature
get schema(): Schema<{}>
Schema used for the local database.
Returns
Schema
<{}>
Inherited from
AbstractPowerSyncDatabase
.schema
Methods
_initialize()
_initialize(): Promise<void>
Allows for extended implementations to execute custom initialization logic as part of the total init process
Returns
Promise
<void
>
Overrides
AbstractPowerSyncDatabase
._initialize
close()
close(options): Promise<void>
Closes the database connection. By default the sync stream client is only disconnected if multiple tabs are not enabled.
Parameters
Parameter | Type | Default value |
---|---|---|
options | PowerSyncCloseOptions | DEFAULT_POWERSYNC_CLOSE_OPTIONS |
Returns
Promise
<void
>
Overrides
AbstractPowerSyncDatabase
.close
connect()
connect(connector, options?): Promise<void>
Connects to stream of events from the PowerSync instance.
Parameters
Parameter | Type |
---|---|
connector | PowerSyncBackendConnector |
options ? | PowerSyncConnectionOptions |
Returns
Promise
<void
>
Overrides
AbstractPowerSyncDatabase
.connect
disconnect()
disconnect(): Promise<void>
Close the sync connection.
Use connect to connect again.
Returns
Promise
<void
>
Inherited from
AbstractPowerSyncDatabase
.disconnect
disconnectAndClear()
disconnectAndClear(options?): Promise<void>
Disconnect and clear the database. Use this when logging out. The database can still be queried after this is called, but the tables would be empty.
To preserve data in local-only tables, set clearLocal to false.
Parameters
Parameter | Type |
---|---|
options ? | DisconnectAndClearOptions |
Returns
Promise
<void
>
Inherited from
AbstractPowerSyncDatabase
.disconnectAndClear
execute()
execute(sql, parameters?): Promise<QueryResult>
Execute a SQL write (INSERT/UPDATE/DELETE) query and optionally return results.
Parameters
Parameter | Type | Description |
---|---|---|
sql | string | The SQL query to execute |
parameters ? | any [] | Optional array of parameters to bind to the query |
Returns
Promise
<QueryResult
>
The query result as an object with structured key-value pairs