为什么我不能使用 Node JS 连接到 SQL Server?

Why can't I connect to SQLServer uisng NodeJS?

我是 Node JS 的新手,现在我正在创建一个连接到 SQL 服务器的项目,但是当我使用命令 node Database\connect.js 它应该什么都不做做一个 console.log 它确实连接或没有连接。

这是我的package.json

{
  "dependencies": {
    "body-parser": "^1.19.0",
    "express": "^4.17.1",
    "tedious": "^14.0.0"
  },
  "name": "weather-nodejs-apirest",
  "version": "1.0.0",
  "main": "connect.js",
  "devDependencies": {},
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "description": ""
}

这是我的 connect.js

var Connection = require('tedious').Connection;
var config = {
    server: 'SERVERNAME',
    authentication: {
        type: 'default',
        options: {
            userName: 'sa',
            password: 'password'
        }
    },
    options: {
        database: 'weather_app',
        // instanceName: 'Sqlexpress',
        rowCollectionOnDone: true,
        useColumnNames: false
    }
}

var connection = new Connection(config);
connection.on('connect', function (err) {
    if (err) {
        console.log(err);
    } else {
        console.log('Connected');
    }
});

module.exports = connection;

connection.on(...) 方法本身不会启动数据库连接。它仅在应用程序使用 connection.connect() 方法启动它时运行。

由于您要从 connect.js 向外部导出 connection,您应该在某处导入并启动连接 (主要在应用程序入口点)

const connection = require('path/to/connect.js');

// initiate
connection.connect();

文档: http://tediousjs.github.io/tedious/getting-started.html