Closed mw10013 closed 11 months ago
https://developers.cloudflare.com/d1/get-started
wrangler d1 execute
pnpm wrangler d1 execute rcf_db --local --file=./d1/schema.sql pnpm wrangler d1 execute rcf_db --local --command='select * from customers'
https://github.com/jose-donato/race-stack https://rozenmd.com/d1-sql-notes https://www.opszero.com/notes/using-cloudflare-d1/
https://github.com/drizzle-team/drizzle-orm/blob/main/examples/cloudflare-d1/src/index.ts
router.get('/users', injectDB, async (req: Request, env: Env) => {
const query = req.db.select().from(users);
console.log(query.toSQL());
const result = await query.all();
return json(result);
});
router.get('/users/:id', injectDB, async (req: Request, env: Env) => {
const result = await req.db
.select().from(users)
.where(eq(users.id, Number(req.params!['id'])))
.get();
return json(result);
});
router.post('/users', injectDB, async (req: Request, env: Env) => {
const { name, email } = await req.json!();
const res = await req.db.insert(users).values({ name, email }).returning().get();
return json({ res });
});
resetting sqlite database file
https://www.sqlite.org/cli.html
sqlite3 db.sqlite "pragma table_list;"
push https://medium.com/@andriisherman/migrations-with-drizzle-just-got-better-push-to-sqlite-is-here-c6c045c5d0fb https://github.com/drizzle-team/drizzle-orm/blob/main/examples/better-sqlite3/drizzle.config.ts https://github.com/drizzle-team/drizzle-orm/blob/main/examples/better-sqlite3/migrate.ts tablesFilter: https://orm.drizzle.team/kit-docs/conf#multi-project-schema
export default {
schema: "./src/schema.ts",
out: "./drizzle",
driver: "better-sqlite",
dbCredentials: {
url: "./sqlite.db",
},
} satisfies Config;
import { drizzle } from "drizzle-orm/better-sqlite3";
import { migrate } from "drizzle-orm/better-sqlite3/migrator";
import Database from "better-sqlite3";
const sqlite = new Database("sqlite.db");
const db = drizzle(sqlite);
// this will automatically run needed migrations on the database
migrate(db, { migrationsFolder: "./drizzle" });
https://js.langchain.com/docs/api/stores_message_cloudflare_d1/classes/CloudflareD1MessageHistory
/chat/_index.tsx - admin: list, new /chat/$id.tsx
kv: chat:$id