Cloudflare D1とDrizzleを組み合わせているときにDrizzleクエリを使用する
javascript
typescript
drizzle
cloudflare
投稿日: 2025/06/01
Drizzleでレコードを取得するとき、DrizzleクエリやSQL Selectなどの方法があります。
DrizzleクエリはPrismaライクなメソッドで、SQL Selectはより生のSQLに近いメソッドです。
Cloudflare d1と組み合わせるドキュメントではSQL Selectが使われている例が書かれています。
実際に以下のようなコードを書いてみると.posts
の部分でエラーになります。
const db = drizzle(c.env.DB) await db.query.posts.findMany()
Property 'posts' does not exist on type 'DrizzleTypeError<"Seems like the schema generic is missing - did you forget to add it to your DB type?">'.ts(2339)
Drizzleクエリを使った例が全く見つからないので対応してないのかと思いましたが、違いました。
以下のように第2引数でschemaを渡せばよかったです。
import * as schema from "../../../db/schema" const db = drizzle(c.env.DB, { schema }) await db.query.posts.findMany()