SuperAPI AI 工具集

drizzle-orm-best-practices

编程与开发

查看项目

更新于 10-15 20:10

技能介绍

用途:在编写或审查 Drizzle 的 schema、查询、写入与事务时,提供方言感知的约定,把 Drizzle 当作 SQL 方言与驱动契约之上的类型化 SQL 构建器使用。

主要能力与做法:写 sql 前先查找其构建器、操作符与辅助方法;把数据范围和不变量保留在 SQL 中;从所配置驱动读取写入元数据;让数据库负责持久化的当前时间;对不可避免的原始结果在运行时进行解码。引入原始 SQL 前应穷尽内置查询构建器和辅助方法,以让 Drizzle 保有 SQL 生成、参数化和结果解码的所有权。当读取暴露的数据超过调用方所需,或在取回后才检查访问权限时,应在数据库边界强制查询范围。当行为取决于写入影响零行、一行还是多行时,从驱动结果解释写入基数,而不是仅为计数而返回行数据。当多条语句共同维护同一不变量时,应定义事务边界并把事务传给每个参与的辅助方法。当持久时间戳表示数据库当前时间时,使用数据库生成的时间戳而非应用时钟。把每个原始结果在 ORM 边界视为不可信;当不可避免的 sql 表达式返回值时,应用运行时表达式解码,禁止仅编译期的结果标注;当构建器无法表达带结果的操作时,将其限制在完整的原始结果校验之后,而不是信任泛型结果类型。

资料还列出库来源:GitHub 仓库 ID 为 drizzle-team/drizzle-orm,Context7 库 ID 为 /drizzle-team/drizzle-orm-docs,DeepWiki 仓库 ID 为 drizzle-team/drizzle-orm;当前文档用 Context7,文档不足或与实现冲突时用 DeepWiki。

限制:资料未提供具体安装命令、代码示例、收费信息或平台支持细节。