SQL Connector

🗃️ 安全可靠的MSSQL数据桥梁

基于pymssql的SQL Server安全连接层,提供参数化查询、自动重试与连接池,适用于OpenClaw Agent可靠访问MSSQL场景。

收藏
3.2k
安装
1k
版本
2.1.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

sql-connector 是面向 OpenClaw Agent 的通用 SQL Server 连接中间件,基于 pymssql(原生 TDS 协议驱动)构建,无需依赖 sqlcmd 等外部子进程。通过工厂模式 get_connector(backend) 获取连接实例,支持 'cloud''local' 双后端配置。

三种核心 API 覆盖常见数据库操作场景:

  • execute():执行 INSERT/UPDATE/DELETE,返回布尔状态
  • query():执行 SELECT,返回字典列表
  • scalar():执行聚合查询,返回单个标量值

所有 API 强制参数化查询%s 占位符),通过元类 _LockCoreMethods 封印核心方法,禁止子类重写,从架构层面阻断 SQL 注入风险。

显著优点

1. 零外部依赖:纯 Python 实现,基于 pymssql 原生 TDS 驱动,无需 sqlcmd/ODBC 配置
2. 安全架构:参数化查询强制封印、自动连接池管理、结构化异常处理

3. 高可用性:内置指数退避重试机制,适应云数据库瞬态故障

4. 环境隔离:通过 SQL_CLOUD_*SQL_LOCAL_* 前缀清晰区分多环境配置

潜在局限

  • ALPHA 阶段:API 可能变更,生产环境需充分测试
  • MSSQL 专用:仅支持 SQL Server,不兼容 MySQL/PostgreSQL
  • Python 生态限制:pymssql 在 ARM 架构(Apple Silicon)和旧版 Windows 上编译依赖较复杂
  • 连接字符串硬编码:环境变量方案缺乏动态凭证轮换能力(如 Azure Key Vault 集成)

适合人群

  • 构建记忆库、任务队列等持久化层的 OpenClaw Agent 开发者
  • 需要云-本地双环境无缝切换的运维场景
  • 对 SQL 注入防御有强合规要求的金融/医疗数据处理场景

常规风险

| 风险项 | 说明 |
|--------|------|
| 凭证泄露 | 环境变量明文存储密码,需配合 Docker Secret/Kubernetes Secret 使用 |
| 连接耗尽 | 高并发场景下需监控 pymssql 连接池上限 |
| 版本锁定 | pymssql 2.2.x 与 SQL Server 2022 某些特性(如 JSON 原生支持)兼容性待验证 |
| 网络超时 | 云数据库跨区域访问需合理设置 `login_timeout` 与 `timeout` 参数 |

SQL Connector 内容

手动下载zip · 6.5 kB
README.mdtext/markdown
请选择文件