Next.js + Prisma
bash
npm install prisma @prisma/client
npx prisma init --datasource-provider mysqlprisma
model Post {
id Int @id @default(autoincrement())
title String
content String?
createdAt DateTime @default(now())
}ts
// lib/prisma.ts — 单例
import { PrismaClient } from '@prisma/client'
const globalForPrisma = globalThis as unknown as { prisma: PrismaClient }
export const prisma = globalForPrisma.prisma || new PrismaClient()
if (process.env.NODE_ENV !== 'production') globalForPrisma.prisma = prismaRSC 中直接用
tsx
// app/posts/page.tsx
import { prisma } from '@/lib/prisma'
export default async function Posts() {
const posts = await prisma.post.findMany() // 服务端直接查库
return posts.map(p => <div key={p.id}>{p.title}</div>)
}