Bom por que sequelize?
Imagine você desenvolvendo um crud no banco de dados como Mysql (ou outro de sua escolha).
Você precisaria conhecer a linguagem do gerenciador e executar a tarefa de codificação.
Nada rápido pois se dispuser de pouco tempo sua tarefa poderá ser difícil de ser executada, ou talvez impossível no tempo curto disponível.
Aí é que entra os modelos do Sequelize.
Com os modelos do sequelize você não precisará codificar nada na linguagem sql, bastando definir seus modelos de tabelas no banco de dados. Então sequelize cuida de todo o resto.
Mas como definir o tal modelo.
Esse é o objetivo desse post esclarecer como fazer a definição.
Os dois exemplos básicos são:
Chamando sequelize.define(modeloNome, atributos, opções)
Estendendo o modelo e chamando init(atributos, opções)
Se você pretende criar uma tabela de clientes por exemplo seu modelo poderá ser como segue.
--------------------------------
const Sequelize = require('sequelize');//Importando a biblioteca
const database = require('./db');//chamando o arquivo de configuração do mysql
const Cliente = database.define('cliente', {//Se a tabela não existir ela será criada.
id: {
type: Sequelize.INTEGER,//definição de tipo de dados
autoIncrement: true,//Aqui você está definindo o campo id como auto incremento
allowNull: false,
primaryKey: true
},
cpf: {
type: Sequelize.STRING,
allowNull: false
},
nome: {
type: Sequelize.STRING,
allowNull: false
},
debito: {
type: Sequelize.DOUBLE
},
descricao: Sequelize.STRING
});
module.exports = Cliente;
--------------------------------
Agora você pode estender o modelo definido acima.
Bom a idéia desse artigo era mostrar a vantagem de usar o ORM Sequelize.a
Você poderá ver mais detalhes no link abaixo:
https://github.com/aondenet-sinval/JsTr/tree/main/4Js-web/sequelize