Agiliza tu desarrollo en Nodejs con el ORM sequelize
Sequelize es un ORM para Nodejs que te permitirá agilizar bastante tus desarrollos que incluyan bases de datos relacionales como MySQL o Postgress.
Cuando hacemos algún desarrollo del lado del backend una de las tareas más comunes que podemos realizar es manipular bases de datos(Insertar, buscar, actualizar, borrar), para esto generalmente se escribe directamente la consulta SQL en el lenguaje de programación y asi conseguir los datos, un ORM (Object-Relational mapping) nos permite convertir tablas de una base de datos en entidades en un lenguaje de programación orientado a objetos, lo cual agiliza bastante el acceso a estos datos.
Sequelize es un ORM para Nodejs que nos permite manipular varias bases de datos SQL de una manera bastante sencilla, entre estas bases de datos podemos encontrar: mysql, sqlite, postgres, mssql.
Para instalar sequelize en nuestro proyecto de node solo tenemos que escribir las siguientes lineas en la consola:
Con sequelize ya instalado lo siguiente es configurar nuestra conexión a la base de datos usando sequelize, para hacer esto lo hacemos de la siguiente manera:
Lo primero que estamos haciendo es importar la clase
Sequelize
despues lo que se hace es crear una nueva instancia de esta clase que recibe como parámetros en su constructor, el nombre de la base de datos, el nombre del usuario, la contraseña, y un objeto de configuración donde especificamos el host de nuestra base de datos, el dialect que es donde ponemos que base de datos se esta utilizando.
Para verificar si nuestra conexión funciona, lo hacemos con el método
authenticate()
el cual nos devuelve una promesa que funciona de la siguiente manera:Modelos
Los modelos en sequelize nos permiten representar nuestras tablas y manipular estos datos, un modelo se define de la siguiente manera:
Lo que se hace aqui es usar el método
define()
que recibe como primer parámetro el nombre de la base de datos, como segundo parámetro un objeto donde ponemos los atributos de nuestra tabla, donde podemos especificar que tipo de dato va representar este campo.Consultas
Ya con este modelo creado podemos usarlo para consultar los datos de esta tabla, por ejemplo para buscar todos registros de esta tabla es tan sencillo como hacer lo siguiente:
El método
findAll()
nos trae todos los registros de esta tabla y para acceder a ellos simplemente se ejecuta el método toJSON()
que nos da un objeto con la información, este método findAll()
tiene muchas opciones para hacer consultas más complejas para lo cual te invito a ver la documentación de sequelize.
Ahora si quisieramos mostrar el campo por el id podemos ejecutar el método
findById()
:
Aqui en primer lugar se recibe el id que queremos buscar y como segundo parámetro un objeto donde especificamos diferentes opciones para mejorar nuestra consulta.
Tambien podemos hacer uso del objeto de configuración
where
que nos permite hacer una mejor selección de nuestros registros en nuestro método findAll
o find
, este objeto funciona de la siguiente manera:
Esto es equivalente a escribir el SQL
SELECT * FROM user WHERE firstname = 'Alejandro'
.
Esto es todo por este articulo, te invito a visitar la documentación de sequelize.
Espero que pueda usar pronto sequelize en tus proyectos con node, hasta la próxima.
nodejsbases-de-datosbackend
0 comentarios:
Publicar un comentario