Saltar al contenido principal

Resumen Prisma ORM (proyecto existente)

Este anexo resume la configuración necesaria para desplegar un proyecto existente que utilice Prisma ORM en nuestro equipo.

Paso 1 — Verificar los ficheros

Se debe verificar que existen en el proyecto, por lo menos, los siguientes ficheros:

  • package.json
  • .env
  • prisma.config.ts
  • prisma/schema.prisma

Paso 2 — Verificar el contenido de los ficheros

  • El valor DATABASE_URL correctamente definido en el .env.
    DATABASE_URL="file:./dev.sqlite"
  • Adaptador de la base de datos instalado (verificar package.json).
    {
    "name": "dwcs",
    "version": "1.0.0",
    "description": "",
    "main": "index.js",
    "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
    },
    "keywords": [],
    "author": "",
    "license": "ISC",
    "type": "module",
    "devDependencies": {
    "prisma": "^7.6.0"
    },
    "dependencies": {
    "@prisma/adapter-better-sqlite3": "^7.6.0",
    "@prisma/client": "^7.6.0",
    "dotenv": "^17.4.0"
    }
    }
  • En el fichero prisma/schema.prisma:
    • El valor de provider definido en datasource db.
    • El valor de provider definido a prisma-client-js en generator cliente.
    generator client {
    provider = "prisma-client-js"
    output = "../generated/prisma"
    }

    datasource db {
    provider = "sqlite"
    }
  • En el programa principal, adaptador correctamente importado y definido.
    import 'dotenv/config';
    import { PrismaBetterSqlite3 } from "@prisma/adapter-better-sqlite3";
    import { PrismaClient } from "./generated/prisma/index.js";

    const adapter = new PrismaBetterSqlite3({ url: process.env.DATABASE_URL });
    const prisma = new PrismaClient({ adapter });

Paso 3 — Instalar dependencias

Se instalan todas las dependencias del package.json:

npm install

Paso 4 — Generar el schema de Prisma

Generar los ficheros JS del cliente de Prisma en ./generated/prisma:

npx prisma generate
Ejemplo de salida del comando
Loaded Prisma config from prisma.config.ts.

Prisma schema loaded from prisma\schema.prisma.

✔ Generated Prisma Client (v7.6.0) to .\generated\prisma in 45ms

Start by importing your Prisma Client (See: https://pris.ly/d/importing-client)

Si accdemos a ese directorio, veremos múltiples ficheros JavaScript.

Paso 5 — Ejecutamos las migraciones

npx prisma migrate dev
Ejemplo de salida del comando
Loaded Prisma config from prisma.config.ts.

Prisma schema loaded from prisma\schema.prisma.
Datasource "db": SQLite database "dev.sqlite" at "file:./dev.sqlite"

SQLite database dev.sqlite created at file:./dev.sqlite

Applying migration `20260402075436_init`

The following migration(s) have been applied:

migrations/
└─ 20260402075436_init/
└─ migration.sql

Your database is now in sync with your schema.