关于 query-builder
此技能帮助开发者为 Protheus ERP 表构建安全、高效的 SQL 查询,涵盖访问方式选择、必需过滤条件、索引匹配和动态值参数化。
主要功能
- 01Protheus 数据库规范与过滤条件
- 02Workarea 与 SQL 访问方式选择
- 03使用 FWPreparedStatement 参数化查询
- 04SIX 索引匹配指导
- 05跨数据库查询指导
适用场景
- 01为标准表或自定义表编写查询
- 02在 DbSeek 与 Embedded SQL 间选择
- 03检查查询是否缺少必需过滤条件
- 04排查索引不匹配导致的慢查询
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ thalysjuvenal/ advpl-specialist --skill query-builder安装后在 Claude Code 中输入/query-builder确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
cross-database.mdindex-awareness.mdpatterns-fwpreparedstatement.mdpatterns-workarea.mdreference.md详细介绍
Protheus 查询构建器
此技能可帮助你针对 Protheus ERP 表构建正确、安全且经过优化的 SQL,同时遵循平台的数据库约定:强制软删除(D_E_L_E_T_)和多分支(xFilial)筛选、匈牙利命名法字段名、由字典驱动的物理架构(RetSqlName())以及 SIX 索引对齐。它会指导 Agent 选择正确的访问模式——Workarea 导航、Embedded SQL 或原始 TCSqlExec——强制应用必需的筛选条件,让 WHERE 子句顺序匹配可用索引,并使用 FWPreparedStatement 为所有动态值设置参数,以消除注入风险。
在针对 Protheus 表(标准 SA*/SE*/SF* 或自定义 Z*)构建任何查询、决定使用 DbSelectArea/DbSeek 还是 Embedded SQL、检查代码是否缺少必需的筛选条件、添加参数化查询、通过索引不对齐诊断慢查询,或编写跨数据库代码时,启用此技能。此技能不涵盖 BeginSQL/EndSQL 宏语法本身(宏的详细信息请参阅配套技能 embedded-sql),也不涵盖写入时的记录锁定语义(请参阅 protheus-locks-deadlocks)。
| 参考文件 | 何时阅读 |
|---|---|
| reference.md | 始终阅读——数据库约定、表/字段命名、必需的筛选条件、模式选择概览 |
| patterns-workarea.md | 使用 DbSelectArea + DbSeek + RecLock 生成逐条记录处理代码时 |
| patterns-fwpreparedstatement.md | 构建参数化 TCQuery/TCSqlExec、LIKE 子句、INSERT/UPDATE/DELETE 时 |
| index-awareness.md | 选择/验证索引、排列 WHERE 子句顺序、使用常见 SIX 键表达式时 |
| cross-database.md | 使用 ChangeQuery()、TCGetDB()、DBAccess 宏以及 MSSQL/PostgreSQL/Oracle 等效方案时 |
评论
支持 Markdown