# mysql MySQL 标准库

## 功能

mysql(dsn) 创建 MySQL 查询构建器，支持 SQL 设置、普通绑定、批量绑定、批量执行、查询多行、查询单行、写入执行和 SQL 预览。

## API 列表

| API | 说明 |
| ------ | ------ |
| [mysql.query](/docs/mysql/query) | 设置当前 MySQL 对象的 SQL 文本。 |
| [mysql.bind](/docs/mysql/bind) | 追加一组普通绑定参数。 |
| [mysql.binds](/docs/mysql/binds) | 追加多行批量绑定参数。 |
| [mysql.batch](/docs/mysql/batch) | 设置批量 exec 的每批行数。 |
| [mysql.workers](/docs/mysql/workers) | 设置批量 exec 的并发工作数。 |
| [mysql.all](/docs/mysql/all) | 执行查询并返回多行结果。 |
| [mysql.one](/docs/mysql/one) | 执行查询并返回单行结果。 |
| [mysql.exec](/docs/mysql/exec) | 执行不需要返回结果集的 SQL。普通绑定执行一次；binds 批量配置会按 batch/workers 执行。 |
| [mysql.sql](/docs/mysql/sql) | 返回当前 SQL 的调试文本。 |

## 示例

```bt
db = mysql('mysql://user:pass@127.0.0.1/test')
result = db.query('select * from user where id=?').bind(1).sql()

// 输出：select * from user where id=1
print result
```

## 注意事项

- all/one/exec 会创建短生命周期异步运行器并同步等待数据库结果。
- all/one 会拒绝 binds、batch、workers，避免批量配置被静默误用。
