Repolode
kysely-org

kysely-org/kysely

一个类型安全的 TypeScript SQL 查询构建器,支持表、列与结果类型的自动补全。

Star
14,294
Fork
452
未关闭 Issue
187
最近提交
4小时前

这是什么?

Kysely 是一个用于 TypeScript 的 SQL 查询构建器。通过链式 API 编写查询,TypeScript 编译器会跟踪每一步可用的表和列,结果行的类型只包含实际选中的列,子查询、连接和 with 语句中的别名与类型也能被正确推导。

项目主要面向 Node.js,同时可运行于 Deno、Bun、Cloudflare Workers 及浏览器环境。支持 PostgreSQL、MySQL、Microsoft SQL Server、SQLite 和 PGlite 等数据库方言。它受 Knex.js 启发,定位是查询构建层而非完整的 ORM。

对于编译期无法推导类型的场景,提供 sql 模板标签和动态模块作为补充。API 文档写在类型声明文件中,在 IDE 中悬停即可查看。

核心功能

  • 01在编译期检查查询中的表和列引用。
  • 02结果类型随选中的列、别名和子查询自动推导。
  • 03支持 PostgreSQL、MySQL、MSSQL、SQLite 和 PGlite 方言。
  • 04可运行于 Node.js、Deno、Bun、Cloudflare Workers 和浏览器。
  • 05提供 sql 模板标签,用于类型系统难以表达的场景。

适用场景

  • 在 TypeScript 后端中构建类型安全的数据访问层。
  • 编写包含连接和子查询的复杂查询,同时保持结果类型准确。
  • 在 PostgreSQL、MySQL 或 SQLite 项目中统一使用同一个查询构建器。
  • 在 Cloudflare Workers 等边缘运行时中执行数据库查询。

快速上手

  1. 1

    访问文档站点 kysely.dev 开始使用

标签

常见问题

kysely 是什么?
一个类型安全的 TypeScript SQL 查询构建器,支持表、列与结果类型的自动补全。 Kysely 是一个用于 TypeScript 的 SQL 查询构建器。通过链式 API 编写查询,TypeScript 编译器会跟踪每一步可用的表和列,结果行的类型只包含实际选中的列,子查询、连接和 with 语句中的别名与类型也能被正确推导。
kysely 可以免费使用吗?用的什么许可证?
kysely 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
kysely 还在维护吗?
活跃维护中。kysely 最近一次提交是在 2026年10月21日。
kysely 适合用来做什么?
在 TypeScript 后端中构建类型安全的数据访问层。 编写包含连接和子查询的复杂查询,同时保持结果类型准确。 在 PostgreSQL、MySQL 或 SQLite 项目中统一使用同一个查询构建器。 在 Cloudflare Workers 等边缘运行时中执行数据库查询。
kysely 怎么安装和运行?
访问文档站点 kysely.dev 开始使用
在哪里获取 kysely?
源代码和安装说明在 GitHub 上:https://github.com/kysely-org/kysely

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目