0Pricing
Next.js 15 Fullstack (App Router + Server Actions) · Lección

Configuración de Prisma ORM

Configure e integre Prisma ORM en su proyecto Next.js para interactuar con distintas bases de datos.

Configuración de Prisma ORM es una lección gratuita de Next.js 15 Fullstack (App Router + Server Actions) en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Next.js 15 Fullstack (App Router + Server Actions), y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Next.js 15 Fullstack (App Router + Server Actions) incluye 4 lecciones en total.

Partes de esta lección aún no han sido traducidas y se muestran en inglés.

What is an ORM?

Welcome! In this lesson, we'll set up Prisma ORM in a Next.js project. But first, what's an ORM?

  • ORM stands for Object-Relational Mapping.
  • It's a technique that lets you interact with your database using your programming language's objects instead of writing raw SQL.
  • Think of it as a translator between your code (e.g., JavaScript objects) and your database (e.g., SQL tables).

Why Choose Prisma?

Prisma is a modern ORM that's popular with Next.js for good reasons:

  • Type Safety: It generates a type-safe client, preventing many runtime errors.
  • Developer Experience: Intuitive API, powerful migrations, and automatic code completion.
  • Modern Stack: Designed for TypeScript and modern JavaScript, fitting perfectly with Next.js.
  • Database Support: Works with PostgreSQL, MySQL, SQLite, SQL Server, and MongoDB.

Installing Prisma

Let's start by adding Prisma to your Next.js project. You'll need two main packages:

  • prisma: The Prisma CLI (Command Line Interface) for development tasks.
  • @prisma/client: The Prisma Client library for interacting with your database in code.

Run this command in your project's root:

npm install prisma @prisma/client

Initialize Prisma

After installation, you need to initialize Prisma in your project. This command sets up the basic Prisma structure, including the prisma/schema.prisma file.

It also creates a .env file to hold your database connection string.

npx prisma init

Connect Your Database

The .env file created by prisma init contains a DATABASE_URL variable. This is where you tell Prisma how to connect to your database.

For local development, SQLite is often used for simplicity. For production, you might use PostgreSQL or MySQL.

# .env
DATABASE_URL="postgresql://user:password@host:port/database?schema=public"

# Example for SQLite (local file)
# DATABASE_URL="file:./dev.db"

The Prisma Schema File

Your prisma/schema.prisma file is the heart of your Prisma setup. It defines three key blocks:

  • datasource: Specifies your database provider (e.g., postgresql, sqlite).
  • generator: Configures the Prisma Client (usually prisma-client-js).
  • model: Defines your database tables (models) and their fields.

Defining Your First Model

Let's define a simple User model in your prisma/schema.prisma file. This model will represent a table in your database.

  • id: Unique identifier, auto-incrementing.
  • email: User's email, must be unique.
  • name: User's name, optional.
// prisma/schema.prisma

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

Generating Prisma Client

After defining or changing your models in schema.prisma, you must generate the Prisma Client. This command reads your schema and creates the type-safe client library.

This client is what you'll import and use in your Next.js application to interact with your database.

npx prisma generate

Applying Migrations

To create or update your database tables based on your schema.prisma, you use migrations. The migrate dev command:

  • Compares your schema to the database.
  • Generates SQL migration files.
  • Applies these migrations to your database.

It also generates the Prisma Client automatically after migration.

npx prisma migrate dev --name init

Using Prisma Client

Once Prisma is set up and generated, you can use the PrismaClient in your Next.js server components or API routes to perform database operations. Here's a basic example:

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

async function main() {
  const prisma = new PrismaClient();
  console.log("Prisma Client successfully initialized!");

  // In a real app, you'd perform database operations:
  // const users = await prisma.user.findMany();
  // console.log(users);

  await prisma.$disconnect();
  console.log("Prisma Client disconnected.");
}

main().catch(console.error);

Quick Check: Prisma Commands

You've learned about several key Prisma CLI commands. Which command is used to generate the type-safe Prisma Client after you've modified your schema.prisma file?

Recap: Setting Up Prisma

Great job! You've learned the essential steps to integrate Prisma ORM into your Next.js project:

  • Installed Prisma CLI and client.
  • Initialized Prisma and configured your database URL.
  • Defined data models in schema.prisma.
  • Generated the Prisma Client.
  • Applied migrations to sync your schema with the database.
  • Understood how to instantiate and use PrismaClient.

Next, we'll dive into performing CRUD operations with Prisma!

Preguntas frecuentes

¿La lección «Configuración de Prisma ORM» es gratis?

Sí — el texto completo de «Configuración de Prisma ORM» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Next.js 15 Fullstack (App Router + Server Actions), actualiza a CoddyKit PRO. El curso de Next.js 15 Fullstack (App Router + Server Actions) incluye 4 lecciones en total.

¿Qué aprenderé en «Configuración de Prisma ORM»?

Configure e integre Prisma ORM en su proyecto Next.js para interactuar con distintas bases de datos. Practicas Next.js 15 Fullstack (App Router + Server Actions) con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Next.js 15 Fullstack (App Router + Server Actions)?

No se requiere experiencia previa. Next.js 15 Fullstack (App Router + Server Actions) en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.

¿Cuánto tiempo toma la lección «Configuración de Prisma ORM»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Next.js 15 Fullstack (App Router + Server Actions)?

Sí. Cada lección de Next.js 15 Fullstack (App Router + Server Actions) incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Configuración de Prisma ORM
  2. CRUD con Server Actions
  3. Migraciones del esquema de la base de datos
  4. Población de bases de datos y connection pooling
← Volver a Next.js 15 Fullstack (App Router + Server Actions)