Search code examples
node.jsazuremoduletedious

Azure web app tedious


I want to use use tedious in my Azure web app to follow this tutorial https://learn.microsoft.com/en-us/azure/sql-database/sql-database-connect-query-nodejs I get the error "Uncaught Error: Module name "tedious" has not been loaded yet" with require('tedious').Connection. How do I load this module in Azure?

The javascript code:

var Connection = require('tedious').Connection;
var Request = require('tedious').Request;



// Create connection to database
var config = {
  userName: '******', // update me
  password: '*****', // update me
  server: '*******', // update me
  options: {
      database: 'signals' //update me
  }
}
var connection = new Connection(config);

// Attempt to connect and execute queries if connection goes through
connection.on('connect', function(err) {
    if (err) {
        console.log(err)
    }
    else{
        queryDatabase()
    }
});

function queryDatabase(){
    console.log("test");
    console.log("test");
    console.log('Reading rows from the Table...');

    // Read all rows from table
    request = new Request(
        "SELECT * FROM signals",
        function(err, rowCount, rows) {
            console.log(rowCount + ' row(s) returned');
        }
    );

    request.on('row', function(columns) {
        columns.forEach(function(column) {
            console.log("%s\t%s", column.metadata.colName, column.value);
        });
    });

    connection.execSql(request);
} 

Solution

  • How do I load this module in Azure?

    In Azure, you can install Node.js module through Kudu Debug Console which could be accessed via https://<your-web-app-name>.scm.azurewebsites.net/DebugConsole

    1. cd to D:\home\site\wwwroot in the console.

    2. run the following command inside the wwwroot directory: npm install tedious

    enter image description here