Kysely
Kysely(发音为"Key-Seh-Lee")是一个类型安全且自动补全友好的TypeScript SQL查询构建器。 受Knex.js启发。主要为Node.js开发,但也可在所有其他JavaScript环境中运行,如Deno、Bun、Cloudflare Workers和Web浏览器。
Kysely确保你只引用查询正在编写的部分可见的表和列。结果类型仅包含正确类型和别名的已选列。作为额外的好处,你还可以获得所有这些内容的自动补全。
如上图所示,通过现代TypeScript的纯魔法,Kysely甚至能够解析给pet.name
的别名,并将pet_name
列添加到结果行类型中。Kysely能够从选定的子查询、连接的子查询、with
语句以及你能想到的几乎任何东西中推断列名、别名和类型。
当然,在某些情况下无法在编译时进行类型检查,Kysely为这些情况提供了逃生舱。有关更多信息,请参阅sql模板标签和DynamicModule。
所有API文档都写在类型文件中,你可以在IDE中简单地将鼠标悬停在正在使用的模块、类或方法上来查看它。同样的文档也托管在这里。
如果你开始使用Kysely并找不到想要使用的东西,请开一个issue或加入我们的Discord服务器。
入门
请访问我们的文档网站kysely.dev以开始使用。我们还有一个全面的API文档托管在这里,但你可以通过在IDE中将鼠标悬停在类/方法/属性/任何内容上来访问相同的文档。
贡献者
想要贡献?查看我们的贡献指南。