IPGliteClient
Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:112
PGlite 客户端的最小公开契约。
抽象出 PGliteClient 的核心方法,便于在测试中替换 mock 或在跨适配器代码中
以接口形式注入。所有方法签名都直接转发到底层 @electric-sql/pglite 同名 API。
Methods
describeQuery()
describeQuery(query, options?): Promise<DescribeQueryResult>;
Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:152
描述查询
Parameters
| Parameter | Type | Description |
|---|---|---|
query | string | 要描述的查询 |
options? | QueryOptions | - |
Returns
Promise<DescribeQueryResult>
查询结果类型的描述
disconnect()
disconnect(): Promise<void>;
Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:178
Returns
Promise<void>
exec()
exec(query, options?): Promise<Results[]>;
Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:145
执行 SQL 查询,可以包含多个语句 使用 PostgreSQL 的"简单查询"协议消息
Parameters
| Parameter | Type | Description |
|---|---|---|
query | string | 要执行的查询 |
options? | QueryOptions | - |
Returns
Promise<Results[]>
查询的结果
init()
init(dbName, options): Promise<void>;
Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:113
Parameters
| Parameter | Type |
|---|---|
dbName | string |
options | PGliteClientOptions |
Returns
Promise<void>
liveQuery()
liveQuery<T>(
query,
params?,
callback?): Promise<LiveQuery<T>>;
Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:176
创建 PGlite live query,数据变化时自动回调
Type Parameters
| Type Parameter |
|---|
T |
Parameters
| Parameter | Type | Description |
|---|---|---|
query | string | SQL |
params? | any[] | null | 参数 |
callback? | (results) => void | 结果回调 |
Returns
Promise<LiveQuery<T>>
query()
query<T>(
query,
params?,
options?): Promise<Results<T>>;
Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:122
执行单个 SQL 语句 使用 PostgreSQL 的"扩展查询"协议消息
Type Parameters
| Type Parameter |
|---|
T |
Parameters
| Parameter | Type | Description |
|---|---|---|
query | string | 要执行的查询语句 |
params? | any[] | 查询的可选参数 |
options? | QueryOptions | - |
Returns
Promise<Results<T>>
查询的结果
runExclusive()
runExclusive<T>(fn): Promise<T>;
Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:168
独占运行函数,在函数运行期间不允许其他事务或查询 这在使用 execProtocol 方法时特别有用,因为它们不会被阻塞, 也不会阻塞事务和查询使用的锁
Type Parameters
| Type Parameter |
|---|
T |
Parameters
| Parameter | Type | Description |
|---|---|---|
fn | () => Promise<T> | 要运行的函数 |
Returns
Promise<T>
函数的结果
sql()
sql<T>(sqlStrings, ...params): Promise<Results<T>>;
Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:137
执行单个 SQL 语句,类似于 query,但使用模板语句,其中模板值将被视为参数
使用 PostgreSQL 的"扩展查询"协议消息
Type Parameters
| Type Parameter |
|---|
T |
Parameters
| Parameter | Type |
|---|---|
sqlStrings | TemplateStringsArray |
...params | any[] |
Returns
Promise<Results<T>>
查询的结果
Example
const results = await db.sql`SELECT * FROM ${identifier`foo`} WHERE id = ${id}`
transaction()
transaction<T>(callback): Promise<T>;
Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:159
执行事务
Type Parameters
| Type Parameter |
|---|
T |
Parameters
| Parameter | Type | Description |
|---|---|---|
callback | (tx) => Promise<T> | 接收事务对象的回调函数 |
Returns
Promise<T>
事务的结果
version()
version(): Promise<string>;
Defined in: packages/rxdb-adapter-pglite/src/PGliteClient.ts:179
Returns
Promise<string>