PrismaPostgresIntermediate
Seed — ডিজাইন ডেটা দিয়ে begin
dev DB-তে sample data — categories, products, users।
4টি অংশবাংলা ভাষায়
prisma/seed.tsts
ts
import { PrismaClient } from "@prisma/client";
const prisma = new PrismaClient();
async function main() {
const [tech, lifestyle] = await Promise.all([
prisma.category.upsert({
where: { name: "Tech" },
update: {},
create: { name: "Tech" },
}),
prisma.category.upsert({
where: { name: "Lifestyle" },
update: {},
create: { name: "Lifestyle" },
}),
]);
await prisma.product.createMany({
data: [
{ name: "Mechanical Keyboard", price: 4200, qty: 10, categoryId: tech.id },
{ name: "Wireless Mouse", price: 1800, qty: 25, categoryId: tech.id },
{ name: "Desk Lamp", price: 1200, qty: 15, categoryId: lifestyle.id },
],
});
}
main()
.catch((e) => { console.error(e); process.exit(1); })
.finally(() => prisma.$disconnect());package.json + চালানোbash
bash
// package.json
"prisma": {
"seed": "tsx prisma/seed.ts"
}
npx prisma db seed- seed idempotent — upsert ব্যবহার
tsxবাts-node— TypeScript seedmigrate reset --force→ auto seed
বড় seed
বড় data-তে loop এড়িয়ে createMany — Controller-area আরো পরে।
শেষ প্যারায় নিজে practice করুন — কোড কপি করে নিজের এডিটরে চালিয়ে দেখুন।