Drizzle <> Cloudflare D1
根据 官方网站,
D1 是 Cloudflare 首个可查询的关系数据库。
Drizzle ORM 完全支持 Cloudflare D1 数据库和 Cloudflare Workers 环境。
我们支持 SQL 方言以及特定驱动和语法,
并且映射大多数流行的 SQLite 类 all
、get
、values
和 run
查询方法的语法。
要为您的 Cloudflare D1 设置项目,请参考 官方文档。
第一步 - 安装包
npm
yarn
pnpm
bun
npm i drizzle-orm
npm i -D drizzle-kit
第二步 - 初始化驱动并进行查询
您需要有一个 wrangler.json
或 wrangler.toml
文件用于 D1 数据库,内容大致如下:
wrangler.json
wrangler.toml
{
"name": "YOUR_PROJECT_NAME",
"main": "src/index.ts",
"compatibility_date": "2024-09-26",
"compatibility_flags": [
"nodejs_compat"
],
"d1_databases": [
{
"binding": "BINDING_NAME",
"database_name": "YOUR_DB_NAME",
"database_id": "YOUR_DB_ID",
"migrations_dir": "drizzle/migrations"
}
]
}
进行您的第一个 D1 查询:
import { drizzle } from 'drizzle-orm/d1';
export interface Env {
<绑定名称>: D1Database;
}
export default {
async fetch(request: Request, env: Env) {
const db = drizzle(env.<绑定名称>);
const result = await db.select().from(users).all()
return Response.json(result);
},
};