ORM (Object Relational Mapping) es una técnica de programación que nos ayuda a manipular y consultar la información almacenada dentro de una base de datos usando programación orientada a objetos. Un ORM se encarga de la conexión y también de manejar todo con base en modelos o entidades.
Una principal característica de un ORM es que hace más transparente las conexiones a PostgreSQL y MySQL, además nos protege de algunas vulnerabilidades de SQL y facilita algunas validaciones a la información.
Para qué sirve un ORM
Como esto es una abstracción, no vamos a tener que ejecutar código SQL directamente para hacer una búsqueda, una inserción o una actualización. La ORM va a dar métodos muy prácticos para utilizarlo dentro de nuestro código.
Un ORM nos ayuda en la extracción de código complejo SQL, sin embargo, nunca esta de mas que en verdad sepas cómo hacer tus propias consultas SQL en caso de que necesites una consulta muy potente o avanzada.
Instalando TypeORM
TypeORM está desarrollado con typescript, así que la integración con NestJS va a hacer buena.
Para hacer la integración, lo primero que debes hacer es instalar la dependencia
npm install --save @nestjs/typeorm typeorm
import { TypeOrmModule } from '@nestjs/typeorm';
@Global()
@Module({
imports: [
TypeOrmModule.forRootAsync({
inject: [config.KEY],
useFactory: (configService: ConfigType<typeof config>) => {
const { user, host, dbName, password, port } = configService.postgres;
return {
type: 'postgres',
host,
port,
username: user,
password,
database: dbName,
};
},
}),
],
...
exports: ['API_KEY', 'PG', TypeOrmModule],
})
export class DatabaseModule {}
Contribución creada con los aportes de: Jose Saúl Guerrero Serrano.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?