Expand description
查询构造器
提供类似 ThinkORM 的链式查询构造 API
§P0-1 软删除集成(v1.3.0+)
当 M: Model 实现了 soft_delete_field() 返回 Some(field) 时,
QueryBuilder 会在以下场景自动追加 WHERE {field} IS NULL:
build_select/build_select_with_paramsbuild_count/build_exists/build_max/build_min/build_sum/build_avgbuild_update/build_update_with_params(防止更新已删除记录)build_delete/build_delete_with_params(自动转为UPDATE SET {field} = NOW())
使用 without_soft_delete() 可临时禁用软删除过滤(用于查询已删除记录)。
§P0-2 参数化 WHERE 条件(v1.3.0+)
新增类型安全的参数化 WHERE API:
where_eq(field, value)/where_ne/where_gt/where_ge/where_lt/where_lewhere_like(field, pattern)
这些方法使用 ? 占位符 + Value 绑定,杜绝 SQL 注入。
原有 where_cond(condition: impl Into<String>) 因字符串拼接存在注入风险,
保留以兼容复杂表达式(如 age > 18 AND status = 'active'),但文档标记为不推荐。
Structs§
- Query
Builder - 用于构造 SQL 查询的查询构造器