☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜
必须在提示词开头明确目标用户身份,如“本提示词面向【java后端开发人员】”,并说明其权限、系统环境、可操作载体及不可触碰边界,否则优化建议将脱离实际无法落地。
要让gemini准确理解你提交的sql慢查询优化需求,必须在提示词里明确交代目标用户是谁,否则模型会默认按通用dba视角处理,可能忽略业务侧真实约束条件。
先锁定目标用户身份
在提示词开头第一句就写明:“本提示词面向【数据库运维工程师】”,或“本提示词面向【Java后端开发人员】”,或“本提示词面向【数据产品经理】”。不能写“相关人员”“使用者”这类模糊表述。
身份写错会导致后续所有建议偏离:比如面向前端开发提索引优化,却给出需要DBA权限的执行命令;面向BI分析师提改写SQL,却要求其手动重写JOIN逻辑——这一步写错,后面全盘失效。
说明该用户的技术权限和上下文限制
方法一:用短句罗列关键事实
【数据库运维工程师】:有ALTER TABLE权限,但无线上服务发布权限;所在系统使用MySQL 8.0.33,主从延迟容忍≤100ms。
【Java后端开发人员】:只能修改Mapper XML或MyBatis注解SQL,无法动数据库结构;日志中已确认该SQL由订单履约服务调用,QPS峰值为230。
【数据产品经理】:不接触SQL执行,只看DataStudio中查询耗时告警;需向运营团队解释“为什么筛选近7天订单变慢了”,不要技术术语。
把用户目标动作嵌入问题描述
第一步:明确写出该用户接下来要做什么
例如:“我是一名刚接手老系统的Java后端开发,现在要上线一个修复补丁,需在不改表结构、不加索引的前提下,将这条SQL响应时间从8.2s压到≤500ms。”
第二步:指出他能操作的具体载体
这一步必须具体到文件或界面:是修改order-service模块下的OrderQueryMapper.xml第47行?还是调整Flink SQL作业中的维表JOIN方式?或是替换QuickSight仪表板里的自定义SQL字段?
第三步:标注他不可触碰的边界
比如“禁止修改user_info表字段类型”“不允许在凌晨2点执行OPTIMIZE TABLE”“不能增加新字段供前端展示”。这些限制不写进提示词,Gemini可能推荐出根本无法落地的方案。











