BigYe程普
26-04-08 13:23 微博认证:科技博主

分享技术经验

使用 Drizzle ORM + Supabase Pooler (Transaction Mode) 的时候,连接配置要写上 `prepare: false`,否则使用事务有一定概率遇到“静默失败”,即代码执行完全正确,但是数据库却没有更新。

这是因为 Transaction Mode 下每个事务可能被分配不同的数据库连接,而预处理语句绑定在特定连接上,导致跨连接时语句失效。

我有多个项目使用 NEXTY.DEV 模板开发,所以大部分你用模板会遇到的问题我都能提前遇到。这个问题就是例子之一。现在模板已经更新了 Drizzle ORM 自动配置参数。

发布于 福建