generate_trigger_sql()
function generate_trigger_sql(entityMetadata, options?): string;
Defined in: packages/rxdb-adapter-pglite/src/table/trigger_sql.ts:38
生成 PostgreSQL 触发器 SQL
为实体表生成 INSERT/UPDATE/DELETE 触发器,自动记录所有数据变更到 RxDBChange 表 PostgreSQL 触发器需要先创建触发器函数,然后创建触发器本身
注意:由于 PostgreSQL 事务限制(pending trigger events), 我们无法通过修改列默认值来动态设置 transactionId, 必须在触发器中硬编码,并在每次切换时重建触发器(与 SQLite 方案一致)
Parameters
| Parameter | Type | Description |
|---|---|---|
entityMetadata | EntityMetadata | 实体元数据 |
options | TriggerOptions | 触发器选项 |
Returns
string
完整的触发器 SQL 语句
Example
const sql = generate_trigger_sql(todoMetadata);
await adapter.exec(sql);
// 在事务中使用
const sqlWithTx = generate_trigger_sql(todoMetadata, { transactionId: 'tx-123' });
await adapter.exec(sqlWithTx);