๐ฏ Poin-Poin Utama Modul Ini:
- Mendesain schema relational di
prisma/schema.prisma - Mencegah kebocoran koneksi database di lingkungan dev dengan Prisma Singleton Pattern
- Query data langsung di dalam React Server Component tanpa REST API overhead
๐๏ธ Database Access di Server Components
Karena React Server Components dieksekusi di server, kita dapat melakukan query database secara langsung menggunakan ORM seperti Prisma atau Drizzle tanpa memerlukan fetch API internal!
๐ป Prisma Client Singleton Implementation
lib/prisma.ts
import { PrismaClient } from "@prisma/client";
const globalForPrisma = globalThis as unknown as {
prisma: PrismaClient | undefined;
};
export const db = globalForPrisma.prisma ?? new PrismaClient();
if (process.env.NODE_ENV !== "production") globalForPrisma.prisma = db;