Prisma es un ORM (Object-Relational Mapping – Mapeo Objeto-Relacional) moderno para Node.js, que facilita la interacción con bases de datos mediante un modelo tipado y seguro.
Prisma es una herramienta de acceso a datos que actúa como capa intermedia entre tu aplicación y la base de datos. Permite definir el esquema de datos en un archivo declarativo (schema.prisma) y generar automáticamente un cliente tipado para interactuar con la base de datos. Sus principales componentes son: Prisma Schema: archivo donde defines modelos, relaciones y configuración de la base de datos. Prisma Client: cliente generado automáticamente para realizar consultas tipadas. Prisma Migrate: sistema de migraciones para versionar cambios en el esquema. Prisma Studio: interfaz gráfica para visualizar y editar datos. Es compatible con bases de datos como: PostgreSQL MySQL SQLite SQL Server MongoDB Una de sus principales ventajas es la integración con TypeScript, proporcionando autocompletado y validación estática de tipos, lo que reduce errores en tiempo de desarrollo. Además, Prisma promueve un enfoque basado en esquema declarativo y migraciones controladas, mejorando la mantenibilidad y escalabilidad del proyecto.
model User { id Int @id @default(autoincrement()) email String @unique name String? posts Post[] } model Post { id Int @id @default(autoincrement()) title String content String? author User? @relation(fields: [authorId], references: [id]) authorId Int? }