user2736031
user2736031

Reputation: 43

Node js sql - Node program doesn't exit

I am new to node js. I know about event loop that node waits if there is any callbacks or events still pending. I have written a code to connect db and fetch data. The node doesn't exit even after the data is read.

var sql = require("mssql");
var config = {
    user: 'data',
    password: 'abc@123',
    server: 'localhost', 
    database: 'master' 
};
sql.connect(config, function (err) {
    var request = new sql.Request();
    var i;
    request.query('GetData').then(
        ri=>{
          console.log(ri.recordset.map(o=>o.Key));
        })

})

Can any one please help me why this is happening?

Upvotes: 1

Views: 215

Answers (1)

Terry Lennox
Terry Lennox

Reputation: 30725

You can close the connection after your query is complete, this will allow the process to exit:

var sql = require("mssql");
var config = {
    user: 'data',
    password: 'abc@123',
    server: 'localhost', 
    database: 'master' 
};

sql.connect(config).then(pool => {
    var request = new sql.Request();
    request.query('GetData;').then(ri => {
        console.log(ri.recordset.map(o => o.Key));
        // Close the pool now we're done with it...
        pool.close();
    });
}).catch (err => {
    console.error("An error occurred:", err);
});

Upvotes: 1

Related Questions