Expand description
Stream API — 异步流式查询
§概述
v2.1.0 改造 stream 为真游标逐行产出,峰值内存 ≤ 50 MB(100 万行)。
stream_buffered 保留旧实现(全量收集后逐行 yield)作为兼容逃生舱。
§向后兼容
streamtrait 签名不变(ADR-v2.1.0-003),仅改 impl 实现stream_buffered行为与 v2.0.0stream完全一致
§示例
ⓘ
use sz_orm_core::paginator::StreamQueryTrait;
use futures::StreamExt;
// 真游标流(推荐)
let mut stream = query.stream(&mut conn);
while let Some(row) = stream.next().await {
let row = row?;
// 处理...
}
// 兼容版(全量收集后逐行 yield)
let mut stream = query.stream_buffered(&mut conn);
while let Some(row) = stream.next().await {
let row = row?;
// 处理...
}Traits§
- Stream
ApiExt - Stream API 扩展 trait
Functions§
- stream_
cursor - 真游标流式查询
Type Aliases§
- RowResult
- 流式查询结果行类型