Подключение к базе данных с использованием утомительного - PullRequest
1 голос
/ 14 июня 2019

Каков рекомендуемый способ установить соединение с базой данных и правильно его закрыть в Node.js, используя tedious?

Для каждого запроса мы создаем новое соединение и обрабатываем запрос, затем закрываем их в обратном вызове.

app.get('/getData/:id', function(req, res){
    var id = req.params.id;
    var sqlGet = "exec MyStoreProcedure @Id='" + id + "'";
    var connection = new Connection(config);
    var request = new Request(sqlGet, function(err, result){
        connection.close();
        if(err)
            console.log(err);
        else
            res.send(result);
    });

    connection.on('connect', function(err) {
        if (err) 
        {
            console.log(err)
        }else{
            console.log("Connected");
            connection.execSql(request);
        }
    });
});

Есть ли другой рекомендуемый подход для обработки этого сценария?

1 Ответ

0 голосов
/ 14 июня 2019

Вы должны проверить пул tedious-connection-pool: https://github.com/tediousjs/tedious-connection-pool.

Это упрощает управление и повторное использование соединений, а не непрерывное открытие / закрытие соединений.

Как часть использования соединенияВы должны извлечь его из пула в отдельный файл, чтобы его можно было повторно использовать в вашем приложении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...