SqliteClient
Defined in: packages/rxdb-adapter-sqlite/src/SqliteClient.ts:70
SQLite 客户端
提供数据库连接、SQL 执行、变更监听等核心功能
Example
const client = new SqliteClient();
// 默认配置(16ms 平衡模式)
await client.init('mydb', { url: '...' });
// 快速响应模式(4ms)
await client.init('mydb', {
url: '...',
batchTimeout: BATCH_TIMEOUT.FAST
});
const result = await client.execute('SELECT * FROM users');
Extends
EventDispatcher<SqliteClientEvents>
Constructors
Constructor
new SqliteClient(): SqliteClient;
Returns
SqliteClient
Inherited from
Methods
addEventListener()
addEventListener<T>(type, listener): void;
Defined in: packages/utils/dist/tools/event.d.ts:58
添加事件监听器
Type Parameters
| Type Parameter |
|---|
T extends keyof SqliteClientEvents |
Parameters
| Parameter | Type | Description |
|---|---|---|
type | T | 事件类型 |
listener | EventListener<SqliteClientEvents[T]> | 事件监听器函数 |
Returns
void
Inherited from
EventDispatcher.addEventListener
disconnect()
disconnect(): Promise<void>;
Defined in: packages/rxdb-adapter-sqlite/src/SqliteClient.ts:129
断开数据库连接
等待所有待执行任务完成后关闭数据库连接
Returns
Promise<void>
dispatchEvent()
dispatchEvent<T>(type, data): void;
Defined in: packages/utils/dist/tools/event.d.ts:77
分发事件
Type Parameters
| Type Parameter |
|---|
T extends keyof SqliteClientEvents |
Parameters
| Parameter | Type | Description |
|---|---|---|
type | T | 事件类型 |
data | SqliteClientEvents[T] | 事件数据 |
Returns
void
Inherited from
execute()
execute(sql, bindings?): Promise<SqliteSuccessResult>;
Defined in: packages/rxdb-adapter-sqlite/src/SqliteClient.ts:153
执行 SQL 语句
所有查询自动排队,保证串行执行避免并发冲突
Parameters
| Parameter | Type | Description |
|---|---|---|
sql | string | SQL 语句(支持多语句,用分号分隔) |
bindings? | SQLiteCompatibleType[] | 参数绑定(可选) |
Returns
Promise<SqliteSuccessResult>
执行结果
Throws
当客户端已断开连接时
Example
const result = await client.execute(
'SELECT * FROM users WHERE id = ?',
[userId]
);
hasEventListener()
hasEventListener<T>(type, listener): boolean;
Defined in: packages/utils/dist/tools/event.d.ts:65
检查是否已添加指定的事件监听器
Type Parameters
| Type Parameter |
|---|
T extends keyof SqliteClientEvents |
Parameters
| Parameter | Type | Description |
|---|---|---|
type | T | 事件类型 |
listener | EventListener<SqliteClientEvents[T]> | 事件监听器函数 |
Returns
boolean
如果已添加监听器则返回true,否则返回false
Inherited from
EventDispatcher.hasEventListener
init()
init(dbName, options): Promise<void>;
Defined in: packages/rxdb-adapter-sqlite/src/SqliteClient.ts:86
初始化数据库
Parameters
| Parameter | Type | Description |
|---|---|---|
dbName | string | 数据库名称(不含 .sqlite 扩展名) |
options | LoadModuleOptions | 加载选项 |
Returns
Promise<void>
removeAllEventListeners()
removeAllEventListeners(): void;
Defined in: packages/utils/dist/tools/event.d.ts:81
移除所有事件监听器
Returns
void
Inherited from
EventDispatcher.removeAllEventListeners
removeEventListener()
removeEventListener<T>(type, listener): void;
Defined in: packages/utils/dist/tools/event.d.ts:71
移除事件监听器
Type Parameters
| Type Parameter |
|---|
T extends keyof SqliteClientEvents |
Parameters
| Parameter | Type | Description |
|---|---|---|
type | T | 事件类型 |
listener | EventListener<SqliteClientEvents[T]> | 事件监听器函数 |
Returns
void
Inherited from
EventDispatcher.removeEventListener
version()
version(): Promise<string>;
Defined in: packages/rxdb-adapter-sqlite/src/SqliteClient.ts:119
获取 SQLite 版本号
Returns
Promise<string>
SQLite 版本字符串