AI 查 ERP 慢、甚至把生产库拖慢,多数不是模型能力问题,而是查询链路没有性能闸门。本文由星云PLUS 团队整理,讲四个闸门:只读隔离、限时与结果上限、查询约束、异步分批,每个都给可操作配置与验收方法。
慢在哪:三条典型路径
- 大表无索引全扫:查询条件没命中索引,在千万行单据表上全表扫描。
- 无界结果拉取:没有条数上限,一次把整月单据全部拉回来。
- 直连生产写库:AI 查询与白天业务共用生产库,一个重查询拖慢全部。
共同点:查询链路没有为"AI 产生的查询"单独设边界。员工会翻页、加条件、挑时机;AI 不会,它照参数执行。所以边界必须放在连接层。
第一道闸:只读隔离
最低要求是只读账号——数据库账号只有 SELECT 权限,DML 从机制上被拒,不依赖提示词约束模型。
| 隔离层级 | 做法 | 适用 |
|---|---|---|
| 独立只读库 | 同步只读副本,AI 查询全走副本 | 报表、BI 类大量查询 |
| 只读账号 | 仅 SELECT 权限,禁 DML | 所有 AI 查询最低要求 |
| 只读接口 | 只发布已审核查询接口 | RESTful 接入 |
查询契约里把"只读"写死(示意,以实际接口契约为准):
{
"operation": "FindVoucherList",
"access": "readonly",
"request": { "pageIndex": 1, "pageSize": 50, "condition": { "voucherDateFrom": "2026-09-01" } },
"response": { "totalCount": 327, "pageIndex": 1, "pageSize": 50, "list": [ "..." ] },
"limits": { "timeoutMs": 10000, "maxRows": 500 }
}
第二道闸:限时与结果上限
- 时间上限:单查询限时(如 10 秒),超时返回"查询超时,请缩小条件",不无限等;重试最多 2—3 次,重试前先确认上一次是否已出结果。
- 条数上限:单次返回上限(如 500 条),AI 要"全部"时返回上限内数据并提示"仅返回前 500 条,可缩小条件或分批获取"。
判断标准:无论 AI 怎么描述需求,落到系统的查询都带时间和条数两个上限。
第三道闸:查询约束(AI 生成 SQL 场景)
数据库与只读 SQL 接入时,在连接层强制约束,不依赖模型自觉:
-- 错误:无界全量 + 无过滤条件
SELECT * FROM receive_voucher;
-- 约束后的写法:强制 LIMIT + 命中索引的过滤字段 + 列白名单
SELECT voucher_code, customer_id, amount, status
FROM receive_voucher
WHERE voucher_date >= '2026-09-01'
ORDER BY voucher_date DESC
LIMIT 500;
四条强制规则:
- 强制 LIMIT,无 LIMIT 的查询直接拒绝。
- 强制过滤条件(单据日期/编号等命中索引字段),无过滤条件拒绝并提示缩小范围。
- 禁止
SELECT *和无 WHERE 的大表查询,返回列走白名单。 - 慢查询识别:对执行计划做检查(EXPLAIN),全表扫描或未命中索引的查询拦截或转人工。
接口接入同理:查询参数在白名单内(页码、每页条数、必填条件字段),白名单外不转发。
第四道闸:异步分批
需要大量数据时不要一次同步返回:
- 游标分页:按唯一键续取比页码分页稳(翻页期间数据新增不漏数重数),已取条数与 totalCount 核对一致再继续。
- 先给前 N 条:AI 先基于前 N 条给初步结论,提示可继续分批获取。
- 慢查询转异步:超过同步阈值的大查询转后台任务,返回任务标识,完成后取结果,不让员工和 AI 干等。
验收清单:进生产前过六关
- AI 查询走只读通道,机制上无写权限。
- 单查询有时间上限、重试上限,超阈值转人工。
- 单次返回有条数上限,超限提示缩小条件或分批。
- AI 生成的 SQL 强制 LIMIT 与过滤条件,无界查询被拒。
- 大结果集走游标分页或异步任务,先返回前 N 条。
- 查询结果带来源、条件与时间戳,结论可回查。
以上来自星云PLUS 团队对 AI 查询类接入的工程总结。星云PLUS AI 系统连接器面向不换现有系统的 AI 接入,按接入条件复用员工身份与权限,关键操作由人确认,调用过程可追溯;具体权限映射和兼容范围以项目验证为准。如果你在评估"AI 查 ERP",可以拿一个真实查询场景按这六关先证明快、稳、不拖垮系统,再扩大范围。
资料:星云PLUS AI 系统连接器白皮书 www.xingyunzuo.cn/resources/a…