Cette page est affichée en anglais. Une traduction française est en cours.
SkillsApr 11, 2026·2 min de lecture

Prisma — Next-Generation ORM for Node.js & TypeScript

Prisma is a next-generation ORM for Node.js and TypeScript supporting PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB, and CockroachDB. Type-safe database access with auto-generated client and intuitive schema language.

Prêt pour agents

Installation agent prête

Cet actif peut être installé après choix du runtime, vérification du plan et exécution de la commande adaptée.

Native · 98/100Policy : autoriser
Surface agent
Tout agent MCP/CLI
Type
Skill
Installation
Single
Confiance
Confiance : Established
Point d'entrée
step-1.md
Commande d'installation directe
npx -y tokrepo@latest install 2f0e03dd-3567-11f1-9bc6-00163e2b0d79 --target codex

À exécuter après confirmation du plan en dry-run.

TL;DR
Prisma provides type-safe database access with auto-generated client, schema language, and migration tooling.
§01

What it is

Prisma is a next-generation ORM for Node.js and TypeScript that replaces traditional ORMs with a schema-first approach. You define your data model in Prisma Schema Language, and Prisma generates a fully typed client, handles migrations, and provides a visual database browser (Prisma Studio). It supports PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB, and CockroachDB.

Prisma targets full-stack developers building applications with frameworks like Next.js, Remix, NestJS, or Express who want type-safe database access without writing raw SQL.

§02

How it saves time or tokens

Prisma's auto-generated client means you never write boilerplate for database queries. The type system catches schema mismatches at compile time rather than runtime. Prisma Migrate generates SQL migration files from schema changes, eliminating manual migration writing. Prisma Studio provides a GUI for browsing and editing data without writing queries during development.

§03

How to use

  1. Initialize Prisma in your project:
npm i -D prisma
npm i @prisma/client
npx prisma init
  1. Define your schema:
// prisma/schema.prisma
generator client { provider = "prisma-client-js" }
datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
}

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

model Post {
  id       Int    @id @default(autoincrement())
  title    String
  author   User   @relation(fields: [authorId], references: [id])
  authorId Int
}
  1. Generate client and run migrations:
npx prisma migrate dev --name init
npx prisma generate
§04

Example

Type-safe queries with relations:

import { PrismaClient } from '@prisma/client';

const prisma = new PrismaClient();

const userWithPosts = await prisma.user.findUnique({
  where: { email: 'alice@example.com' },
  include: { posts: true },
});
// userWithPosts is fully typed with User & { posts: Post[] }
§05

Related on TokRepo

§06

Common pitfalls

  • Prisma Client includes a query engine binary that adds to deployment size. For serverless environments, use the Prisma Accelerate proxy or the new Prisma Client with driver adapters.
  • N+1 queries are easy to create with nested includes. Use Prisma's logging to identify and fix them during development.
  • The Prisma Schema Language is custom and not TypeScript. Schema changes require running prisma generate to update the client, which can be forgotten in CI pipelines.

Questions fréquentes

How is Prisma different from Drizzle ORM?+

Prisma uses its own schema language and generates a query client with a high-level API. Drizzle uses TypeScript for schemas and mirrors SQL syntax directly. Prisma prioritizes developer experience; Drizzle prioritizes SQL transparency and zero overhead.

Does Prisma work with serverless functions?+

Yes, with caveats. The Prisma Client includes a query engine binary that increases cold start times. Prisma Accelerate provides a connection pool proxy optimized for serverless. Driver adapters reduce bundle size.

What is Prisma Studio?+

Prisma Studio is a visual database browser that lets you view and edit data through a GUI. Run npx prisma studio to open it. It reads your schema and provides filtered, paginated views of your tables.

Can I use raw SQL with Prisma?+

Yes. Prisma provides prisma.$queryRaw and prisma.$executeRaw for raw SQL queries. You can also use TypedSQL for type-safe raw queries that are checked against your schema.

How do migrations work in production?+

Run npx prisma migrate deploy in your CI/CD pipeline. This applies pending migrations without generating new ones. Never run prisma migrate dev in production as it resets the database on schema drift.

Sources citées (3)

Fil de discussion

Connectez-vous pour rejoindre la discussion.
Aucun commentaire pour l'instant. Soyez le premier à partager votre avis.

Actifs similaires