Cookie Consent Banner
基于OrbCafe UI的CMessageBox实现企业级Cookie同意横幅组件。
下载 662
将自然语言转换为SQL,安全执行查询并获取优化建议。
openclaw skills install @harrylabsj/sql-buddy命令、参数、文件名以原文为准
Skill: Sql Buddy
Version: 1.0.0
Chunk: 1/1
将自然语言问题转换为 SQL 查询、探索数据库模式、安全执行查询,并获得优化建议。支持 SQLite、PostgreSQL、MySQL 和 SQL Server。
--allow-writereadonly: true — 所有非 SELECT 语句将被拦截~/.openclaw/data/sql-buddy/connections.jsonpassword_hash, secret, token)在模式上下文中被屏蔽clawhub run sql-buddy --query "<自然语言>" --connection <连接字符串> [选项]| 选项 | 类型 | 默认值 | 描述 |
|---|---|---|---|
--query | 字符串 | 必填 | 自然语言查询(2-2000 字符) |
--connection | 字符串 | sqlite://./temp.db | 连接字符串或 JSON 配置 |
--execute | 布尔值 | false | 执行生成的 SQL |
--explain | 布尔值 | true | 显示 EXPLAIN 计划 |
--suggest-indexes | 布尔值 | true | 建议索引 |
--limit-rows | 整数 | 20 | 最大显示行数 |
--output-format | 枚举 | table | table, json, csv, markdown |
--show-schema | 布尔值 | false | 首先显示数据库模式 |
--direct-sql | 字符串 | — | 跳过自然语言→SQL,直接分析/优化给定 SQL |
--allow-write | 布尔值 | false | 允许执行 INSERT/UPDATE/DELETE |
--language | 枚举 | zh-CN | zh-CN, en-US |
sqlite:///path/to/database.db
postgresql://user:pass@host:5432/dbname
mysql://user:pass@host:3306/dbname
mssql://user:pass@host:1433/dbname或使用环境变量:DATABASE_URL / DB_PASSWORD。
clawhub run sql-buddy --query "最近7天注册了多少用户" \
--connection sqlite://./app.db --execute
# → 生成的 SQL:SELECT COUNT(*) as new_users FROM users WHERE created_at >= DATE('now', '-7 days')
# → 结果:847 位新用户clawhub run sql-buddy --query "每个品类上个月的销售额,按金额从高到低排序,同时显示商品数量" \
--connection postgresql://localhost:5432/shop --execute
# → 多表 JOIN,包含 GROUP BY、ORDER BY、窗口函数clawhub run sql-buddy --direct-sql "SELECT * FROM orders JOIN users ON orders.user_id = users.id WHERE users.status = 'active'" \
--explain --suggest-indexes
# → 全表扫描警告、索引建议、优化后的 SQL 重写clawhub run sql-buddy --connection postgresql://localhost:5432/shop --show-schema
# → 所有表及其列、类型、主键、外键和注释提示clawhub run sql-buddy --query "本月各区域销售额对比" \
--connection postgresql://localhost:5432/shop --execute
# → SQL + 结果 + AI 洞察:“华东区销售额环比下降15%,建议关注…”步骤 1:安装 → clawhub install sql-buddy
步骤 2:连接 SQLite → clawhub run sql-buddy --query "有哪些表" --connection sqlite://./test.db
步骤 3:查看模式 → 自动生成
步骤 4:查询 → clawhub run sql-buddy --query "每种状态有多少用户" --connection sqlite://./test.db --execute
步骤 5:查看聚合结果 → “原来不用写SQL也能查数据!”| 文件 | 用途 |
|---|---|
scripts/__init__.py | 包初始化 |
scripts/nl_parser.py | 自然语言 → 查询意图提取 |
scripts/schema_explorer.py | 模式发现(表、列、外键) |
scripts/sql_generator.py | 带少样本提示的 AI SQL 生成 |
scripts/sql_validator.py | 语法验证 + 方言适配 |
scripts/optimizer.py | 执行计划分析 + 索引建议 |
scripts/executor.py | 安全查询执行器(默认只读) |
scripts/connection_manager.py | 连接池 + 凭据管理 |
scripts/result_formatter.py | 将结果格式化为表格 / JSON / CSV |
scripts/insight_generator.py | AI 结果解释 |
scripts/security.py | 密码掩码、SQL 注入防护 |
scripts/drivers/ | 每种方言的驱动适配器 |
已收录 3 个 Skill