LIVE MSSQL
Obtendo um pool de conexões:
const odinMssql = require('odin-mssql');
liveMssql.getConnection(config).then((connection) => {
});
Obtendo uma transação:
const odinMssql = require('odin-mssql');
liveMssql.getTransaction(connection).then((transaction) => {
});
Fechando uma conexão:
const odinMssql = require('odin-mssql');
liveMssql.closeConnection(connection).then(() => {
});
Recomendação de uso:
Obtenha a conexão ao iniciar a aplicação (ao iniciar o express), em
seguida, atribua a conexão obtida a uma propriedade do express,
acessível a qualquer request.
const express = require('express');
const server = express();
const config = require('./config');
const odinMssql = require('odin-mssql');
odinMssql.getConnection(config.dbConfig).then((connection) => {
server.set("connection", connection);
});
Dentro de cada reqhest recebida pela aplicação, apenas obtenha uma
transação da conexão existente:
const odinMssql = require('odin-mssql');
router.get('/', async (req, res) => {
odinMssql.getTransaction(req.app.get('connection')).then(transaction) => {
});
});
Seguindo esta recomendação, a aplicação utilizará sempre a mesma conexão para
todas as requests, porém terá uma transação isolada para cada request.
- Não é necessário fechar as conexões a cada request;
- Lembre-se de sempre fazer commit ou rollback para cada transação.