AgentSkillsCN

db-common

提供通用的数据库查询工作流程、SQL 模板和结果分析方法。使用 exec_sql 工具执行查询。

中文原作
SKILL.md
--- frontmatter
name: db-common
description: 提供通用的数据库查询工作流程、SQL 模板和结果分析方法。使用 exec_sql 工具执行查询。

通用数据库查询工具

【通用规范】

参考:通用规范

【查询工作流程】

1. 确定查询目标

  • 明确要查询的数据和目的
  • 选择合适的数据库和表
  • 确定查询范围(单条记录、列表、统计等)

2. 选择查询方法

  • SQL 查询:适用于快速查询、批量查询、统计分析
    • 使用场景:只提供实例 id、批量查询、统计分析
  • MCP 工具:适用于需要详细执行日志的场景
    • 使用场景:需要完整执行日志、链路追踪等

3. 执行查询

  • 使用 exec_sql 工具执行
  • 执行前:必须打印完整的目标 SQL 语句(用【】包起来)
  • 示例:【SELECT * FROM v3_workflow.workflow_instance WHERE id = 123 AND deleted_at = 0;】

4. 结果分析

  • 结构化展示:明确说明查询到的记录数量
  • 提取关键字段:展示重要字段的值
  • 格式化输出:多条记录使用表格展示,避免直接输出原始 JSON

执行方式

所有查询使用 exec_sql 工具执行,参数替换为实际值。

重要:在执行 SQL 前,必须先打印出完整的目标 SQL 语句,然后再使用 exec_sql 工具执行。

重要:执行 SQL 后,必须对查询结果进行结构化展示:

  • 明确说明查询到的记录数量
  • 提取并展示关键字段的值
  • 多条记录时使用表格或列表形式展示,避免直接输出原始 JSON 数据

通用查询方法

表结构查询

sql
-- 查询表结构(推荐)
DESC database_name.table_name;

-- 查询完整表定义(包含索引、约束等)
SHOW CREATE TABLE database_name.table_name;

-- 查询表状态
SHOW TABLE STATUS LIKE 'table_name';

数据库信息查询

sql
-- 查询所有数据库
SHOW DATABASES;

-- 查询当前数据库
SELECT DATABASE();

-- 查询指定数据库的所有表
SHOW TABLES FROM database_name;

-- 查询表的创建语句
SHOW CREATE TABLE table_name;

基础查询技巧

sql
-- 查询前 N 条记录
SELECT * FROM table_name LIMIT N;

-- 查询去重
SELECT DISTINCT column_name FROM table_name;

-- 查询排序
SELECT * FROM table_name ORDER BY column_name DESC;

-- 查询统计
SELECT COUNT(*) FROM table_name WHERE condition;

-- 条件查询
SELECT * FROM table_name WHERE condition AND deleted_at = 0;

专用数据库查询

常用数据库(有专用 Skill)

  • v3_user:查询组织/租户信息,使用 db-user
  • v3_openapi:查询连接器/API配置,使用 db-openapi
  • v3_metadata:查询事件/按钮/元数据配置,使用 db-metadata
  • v3_e-report:查询数据分析告警配置,使用 db-e-report
  • v3_workflow:查询工作流相关数据,使用本 skill 的通用方法

注意事项

  1. 参数替换:所有模板中的{参数名}都需要替换为实际值
  2. 删除标记:查询时需注意 deleted_at = 0 条件(如果表有软删除字段)
  3. 执行方式:必须通过 MCP 工具 exec_sql 执行
  4. 数据唯一性:不同 org_id 下可能存在相同的 id,这是不同的数据记录