Prisma ORM Cheat Sheet

Last Updated: November 21, 2025

Schema Definition

// schema.prisma
datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
}

generator client {
  provider = "prisma-client-js"
}

model User {
  id        Int      @id @default(autoincrement())
  email     String   @unique
  name      String?
  posts     Post[]
  createdAt DateTime @default(now())
}

model Post {
  id        Int      @id @default(autoincrement())
  title     String
  content   String?
  published Boolean  @default(false)
  author    User     @relation(fields: [authorId], references: [id])
  authorId  Int
}

CRUD Operations

import { PrismaClient } from '@prisma/client'
const prisma = new PrismaClient()

// Create
const user = await prisma.user.create({
  data: {
    email: 'john@example.com',
    name: 'John Doe'
  }
})

// Read
const users = await prisma.user.findMany()
const user = await prisma.user.findUnique({
  where: { id: 1 }
})

// Update
const updated = await prisma.user.update({
  where: { id: 1 },
  data: { name: 'Jane Doe' }
})

// Delete
await prisma.user.delete({
  where: { id: 1 }
})

Queries with Relations

// Include related data
const userWithPosts = await prisma.user.findUnique({
  where: { id: 1 },
  include: { posts: true }
})

// Select specific fields
const users = await prisma.user.findMany({
  select: {
    name: true,
    email: true,
    posts: {
      select: { title: true }
    }
  }
})

// Filtering
const users = await prisma.user.findMany({
  where: {
    email: { contains: '@example.com' },
    posts: { some: { published: true } }
  }
})

// Sorting and pagination
const users = await prisma.user.findMany({
  orderBy: { createdAt: 'desc' },
  take: 10,
  skip: 20
})

CLI Commands

npx prisma init
Initialize Prisma
npx prisma generate
Generate Prisma Client
npx prisma migrate dev
Create and apply migration
npx prisma db push
Push schema without migration
npx prisma studio
Open Prisma Studio GUI
💡 Pro Tip: Run prisma generate after every schema change to update the client!
← Back to Programming Languages | Browse all categories | View all cheat sheets