ICascadeOptions
Defined in: packages/rxdb/src/entity/metadata-options.interface.ts:255
外键级联选项接口 定义关系的外键约束配置
SQLite 外键约束是在数据库层面自动执行的 当父表记录发生变化时,数据库会根据配置自动处理子表记录
Properties
onDelete?
optional onDelete:
| "NO ACTION"
| "RESTRICT"
| "CASCADE"
| "SET NULL"
| "SET DEFAULT"
| OnDeleteAction;
Defined in: packages/rxdb/src/entity/metadata-options.interface.ts:274
删除时的级联行为 定义删除父表记录时如何处理子表的外键
Example
// 删除用户时级联删除订单
onDelete: OnDeleteAction.CASCADE
// 删除分类时将产品的分类ID设为NULL
onDelete: OnDeleteAction.SET_NULL
// 如果有订单则不允许删除用户
onDelete: OnDeleteAction.RESTRICT
Default
根据关系类型自动推断
onUpdate?
optional onUpdate:
| "NO ACTION"
| "RESTRICT"
| "CASCADE"
| "SET NULL"
| "SET DEFAULT"
| OnUpdateAction;
Defined in: packages/rxdb/src/entity/metadata-options.interface.ts:297
更新时的级联行为 定义更新父表主键时如何处理子表的外键
Example
// 更新用户ID时级联更新订单的user_id
onUpdate: OnUpdateAction.CASCADE
// 不允许更新主键(推荐)
onUpdate: OnUpdateAction.RESTRICT
Default
OnUpdateAction.RESTRICT(推荐不更新主键)