Kysely
约 1 分钟阅读
标签:查询构建器
kysely 不能平替 knex.js
- knex 会尝试适配不同 dialect, 提供相同的语义
- e.g. MSSQL 可以使用 limit
- 因此 knex 相对更复杂
- kysely 要求用户自己熟悉各种 SQL 语法
- e.g. MSSQL 使用 top, 虽然有 limit 接口,但是生成的语法是错误的
- kysely 实现更简单, 功能更多
- 一般来说影响不大,不太可能存在需要替换底层实现数据库的情况,除非
- 本身希望实现 adapter
- 实现公共 utils
- kysely-org/kyselyGitHubkysely-org/kyselyknex 会尝试适配不同 dialect, 提供相同的语义 · e.g. MSSQL 可以使用 limit · 因此 knex 相对更复杂 · kysely 要求用户自己熟悉各种 SQL 语法 · e.g. MSSQL 使用 top, 虽然有 limit 接口,但是生成的语法是错误的笔记:Kysely
- MIT, TS
- type-safe typescript SQL query builder
- inspired by Knex.js笔记knexcomposite - 解耦构建最终 query 的过程 · 对于基础的访问模式提供跨库支持 · knex-types 基于 db schema 生成 ts · 参考 · kysely · Knex QueryLab · Knex to SQL打开:/notes/web/framework/knex
- 支持迁移
- 参考
- mikro-orm#5646GitHubmikro-orm/mikro-orm/discussions/5646
- 在尝试往 kysely 迁移
- mikro-orm#5646GitHubmikro-orm/mikro-orm/discussions/5646
codegen
- RobinBlomberg/kysely-codegenGitHubRobinBlomberg/kysely-codegen
- MIT, TS
pnpm add -D kysely-codegen
# mysql2, pg
# --env-file
pnpm kysely-codegen --config-file .kysely-codegenrc.yaml依赖包kysely-codegennpm 包kysely-codegenNPM
关联信息
反向链接、本文链接的其他页面和外部资料。
反向链接
- knex笔记 · kysely
composite - 解耦构建最终 query 的过程 · 对于基础的访问模式提供跨库支持 · knex-types 基于 db schema 生成 ts · 参考 · kysely · Knex QueryLab · Knex to SQL
站内链接
- knex笔记 · Knex.js
composite - 解耦构建最终 query 的过程 · 对于基础的访问模式提供跨库支持 · knex-types 基于 db schema 生成 ts · 参考 · kysely · Knex QueryLab · Knex to SQL
参考资料
GitHub3 条
- kysely-org/kyselygithub.com/kysely-org/kysely
- mikro-orm/mikro-orm/discussions/5646github.com/mikro-orm/mikro-orm/discussions/5646
- RobinBlomberg/kysely-codegengithub.com/RobinBlomberg/kysely-codegen