SuperAPI AI 工具集

sql-translate

数据与分析

查看项目

更新于 10-16 06:46

技能介绍

用途:在数据库方言之间翻译 SQL 查询,基于 sqlglot 的转译引擎,适用于 SQL 迁移与跨库改写场景。

主要能力:通过 sql_translate 工具完成翻译;支持 snowflake、bigquery、postgres、mysql、tsql、hive、spark、databricks、redshift、duckdb、sqlite、oracle、trino/presto 等方言键;翻译后可给出警告,说明有损翻译或需人工复核的特性;可配合 read、write、altimate_core_validate 使用。

使用方式:用户需指定源方言、目标方言与 SQL。若未同时给出源和目标方言,技能会先询问。SQL 可来自用户提供的文件路径(用 read)、消息中的内联 SQL,或提到的剪贴板/stdin。随后调用 sql_translate,传入 sql、source_dialect、target_dialect。返回 success 为 true 时展示翻译结果;存在警告时逐条解释;success 为 false 时说明错误并建议修复。输出会分别标注原文(源方言)和译文(目标方言)。之后可建议用 altimate_core_validate 校验语法、将结果写入文件,或继续翻译其他查询。

调用示例: /sql-translate — 交互式询问源方言、目标方言和 SQL /sql-translate snowflake postgres — 从 Snowflake 翻译到 PostgreSQL,再询问 SQL /sql-translate snowflake postgres SELECT DATEADD(day, 7, CURRENT_TIMESTAMP()) — 内联完整翻译

环境要求:Agent 为 builder 或 migrator(可能会把翻译后的 SQL 写入文件);使用的工具包括 sql_translate、read、write、altimate_core_validate。

限制:资料未提供支持的方言之外的信息、准确率保证、费用、平台要求或私有部署方式。翻译可能存在有损转换或需人工调整之处。