用途:kysely-converter 面向 Kysely 查询工作流,处理四类请求:把原始 SQL 转换为 Kysely TypeScript;根据需求(源 SQL 可选)编写 Kysely 查询;修改或重构已有 Kysely 代码;诊断类型错误。SQL 语义与应用的结果约定需在任务中保持可见。
主要能力与流程:先分类请求,再建立项目上下文与版本,包括 package manifest、已安装 Kysely 元数据、锁文件解析、TypeScript 版本、数据库方言/服务端版本、驱动、schema 类型及邻近查询代码;依赖范围不等于确切安装版本。若无法确认版本,需明确写“Assuming Kysely 0.29.5”并以此为基线,不得将其说成已安装版本。按需读取 SELECT、INSERT、UPDATE、DELETE、Operators、Window functions、Kysely 0.29 等参考。转换时保持查询含义:布尔括号、NULL 三值逻辑、连接类型与 ON/WHERE 谓词位置、重复行、分组、排序、分页、所选列与别名,以及 UNION 与 UNION ALL、COUNT(*) 与 COUNT(column) 的区别;不得擅自加 DISTINCT、过滤、LIMIT 或任意排序掩盖不确定语义。诊断类型错误时按顺序检查 schema 类型、引用作用域、表达式类型、结果类型;不要用 any、cast 或 sql<T> 压制原因。
使用方式与限制:需区分查询构建、SQL 编译和数据库执行:构建器构建查询,.compile() 生成 SQL 与参数,.execute*() 或 db.executeQuery() 使用配置的驱动;编译不等于服务端接受或返回数据正确。缺少方言、schema 或返回要求且影响正确性时应要求澄清。资料未提供安装命令、价格、平台支持及具体版本兼容细节。