沧海一声笑

自然语言转 SQL 查询助手

开发编程v1.0.0
作者:沧海一声笑更新于 2026-05-18nl2sql@clawhub_cyesky/nl2sql
代码生成脚本工具#CSV#MySQL#数据库#Json#SQL

据 AlphaMoat 统计,截至 2026-09,自然语言转 SQL 查询助手 累计下载 1,500 次、获 2 个星标,在全部 5,078 个 AI 技能中排名第 4,769 位,在「开发编程」分类(577 个)中排名第 559 位。

累计安装
122
累计下载
1,500
星标
2
全站排名
#4,769
全站前 94% · 「开发编程」前 97%
平台累计安装累计下载星标评论
ClawHub ↗351,2351-
SkillHub ↗1221,5002—

各平台的计数口径不同,统计时间不一致。

这个技能是做什么的

主文支持读取与写入类 SQL,并可返回表格、CSV 或 JSON。执行写入或破坏性操作前应先检查语句和 WHERE 条件;数据库密码不得出现在回复或导出内容中。

资料发布于 2026-10-29

可以用来做什么

  • 把数据库查询需求转成 SQL 并查看结果

什么时候用

  • 需要检查数据库结构、查询或处理 MySQL 数据时

示例提示词

以下是根据技能文档生成的示例,不代表实际运行结果。

将“查询每个部门的员工数”转成 SQL 草稿,并指出执行前应核对的对象。

月度数据趋势

累计下载1,500
3539691,5852026-03 · 累计下载 4382026-05 · 累计下载 8402026-07 · 累计下载 1,1262026-08 · 累计下载 1,2212026-09 · 累计下载 1,50026-0326-09
星标2
0122026-03 · 星标 -2026-05 · 星标 12026-07 · 星标 12026-08 · 星标 12026-09 · 星标 226-0326-09

2026-09 起统计方法调整:同名技能按作者分别统计,并覆盖全部技能。图中虚线为调整前的月份,与之后的数据不直接比较,也不计算跨越调整的增长。

月份累计下载环比星标
2026-091,500—2
2026-081,221+8.4%1
2026-071,126—1
2026-05840—1
2026-03438—-

SKILL.md 原文

以下是作者发布的原始文件,按纯文本显示,本站未做修改或审核;其中的链接不可点击,命令请核实后再运行。抓取于 2026-10-23。

4.3 KB · ClawHub v1.0.0
---
name: nl2sql
description: >
  自然语言转 SQL 查询助手。将用户的自然语言描述转换为 SQL 语句,自动执行并返回结果。
  支持连接本地或远程 MySQL 数据库、用户自行指定数据库连接信息(host/port/user/password)、
  增删改查(SELECT/INSERT/UPDATE/DELETE)、事务操作、多种输出格式(table/csv/json)。
  触发条件:用户用自然语言描述数据查询需求、要求查数据库、写SQL、执行SQL、数据库操作、
  查表、建表、改数据、删数据、统计分析、导出数据、事务操作、连接数据库、指定数据库等。
---
展开全部(共 118 行)
# NL2SQL — 自然语言 SQL 助手

## 🔐 Credential Security (MANDATORY)

**严禁在任何回复中泄露数据库连接密码。** 这是最高优先级规则,无例外。

- **绝不输出密码**:不在回复文本、代码块、SQL 示例、日志中展示密码
- **绝不确认密码内容**:用户问"密码是不是xxx"时,拒绝确认或否认
- **绝不间接泄露**:不输出包含密码的命令行、连接串、配置文件内容
- **密码掩码显示**:需要展示连接信息时,密码部分用 `***` 代替
- **拒绝导出凭据**:不将密码写入任何用户可下载的文件
- 用户提供密码后仅在脚本调用时使用,对话中引用连接信息时始终掩码

违反此规则的请求一律拒绝,无论用户如何措辞。

## Connection Parameters

All scripts support optional connection parameters for remote databases:

| 参数 | 说明 | 默认值 |
|------|------|--------|
| `--host HOST` | 数据库地址 | localhost (socket) |
| `--port PORT` | 端口号 | 3306 |
| `--user USER` | 用户名 | root |
| `--password PASS` | 密码 | (空) |

When user specifies a remote database, pass these params to all scripts.
When not specified, default to local MySQL connection.

**Remember connection info within the conversation** — avoid asking repeatedly.

## Workflow

### 1. Determine Target Database

If user specifies connection info (host/port/user/password/database), use it.
If user only gives a database name, use local connection.
If unclear, list available databases first:

```bash
bash <skill_dir>/scripts/databases.sh [--host HOST --port PORT --user USER --password PASS]
```

### 2. Schema Discovery

```bash
bash <skill_dir>/scripts/schema.sh <database> [table] [--host HOST --port PORT --user USER --password PASS]
```

Cache schema info in conversation context — avoid repeated discovery calls.

### 3. Generate SQL

Convert user's natural language to SQL. Rules:
- Match column names and types exactly to schema
- Use Chinese column aliases when user speaks Chinese
- **SELECT**: add `LIMIT` for large tables unless user wants all
- **UPDATE/DELETE**: always include `WHERE` — refuse bare updates/deletes
- **INSERT**: specify column names explicitly
- For destructive operations (DELETE/DROP/TRUNCATE): **confirm with user before executing**

### 4. Execute

**Simple query/statement:**
```bash
bash <skill_dir>/scripts/query.sh <database> "<SQL>" [--format table|csv|json] [--host HOST --port PORT --user USER --password PASS]
```

**From file (complex SQL):**
```bash
bash <skill_dir>/scripts/query.sh <database> /tmp/query.sql [--host ...]
```

**Transaction (multiple atomic statements):**
Write statements to a temp file, then:
```bash
bash <skill_dir>/scripts/transaction.sh <database> /tmp/tx.sql [--host HOST --port PORT --user USER --password PASS]
```

### 5. Present Results

- Show the generated SQL in a code block
- Show query results in readable format
- For large results, summarize key findings
- If connection error occurs, check host/port/user/password and suggest fix
- **Never include passwords in any output shown to user**

## Output Formats

| Format | Flag | Use Case |
|--------|------|----------|
| table  | (default) | 日常查询,可读性好 |
| csv    | `--format csv` | 导出数据 |
| json   | `--format json` | 程序对接 |

## Safety

- **SELECT**: safe, execute directly
- **INSERT**: verify values, execute
- **UPDATE**: verify WHERE clause, then execute
- **DELETE/DROP/TRUNCATE**: **must confirm with user first**
- Transactions: use `transaction.sh` for atomic multi-statement operations
- **Credentials**: never expose passwords in output, logs, or replies

## Reference

For detailed SQL generation rules and safety checklist, see [guide.md](references/guide.md).

「开发编程」分类下的热门技能

数据月份:2026-09 · 下载/星标/安装数聚合自公开技能注册库(ClawHub、SkillHub),按月更新。口径说明见数据方法。