Ошибка входа для пользователя, использующего tedious

#node.js #sql-server #npm #login #tedious

#node.js #sql-сервер #npm #аутентификация #утомительно

Вопрос:

Я использую tedious для подключения к SQL Server Express, но получаю сообщение об ошибке входа в систему.

Браузер сервера и служба SQL Server запущены, TCP / IP включен в сетевом протоколе. Имя пользователя включено, кроме того, я могу войти в систему.ЧИСТЫЙ код, но node.js код действительно не работает для меня

 var express = require('express'),
  app = express(),
  port = process.env.PORT || 3000;

  var Request = require('tedious').Request;  
  var TYPES = require('tedious').TYPES;
  var Tedious = require('tedious');  
  var config = {  
      userName: 'sa',  
      password: 'password',  
      server: 'localhost',  
      options: {
          encrypt: true, 
          database: 'MediWorks', 
          instanceName: 'SQLEXPRESS01'
        },
      port : '1433'  
  };  
  var connection = new Tedious.Connection(config);  

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

Комментарии:

1. Почему имя экземпляра SQLEXPRESS01 ? Вы специально назвали свой экземпляр SQL Server Express SQLEXPRESS01 ? Если нет: значение по умолчанию — если вы ничего не указали — просто SQLEXPRESS — вы пробовали это? Также — не уверен, что ожидает tedious — но, как правило, вам нужно указать имя сервера и экземпляра в одном месте — вам нужно будет использовать (local)SQLEXPRESS или machine-nameSQLEXPRESS — не только SQLEXPRESS

Ответ №1:

Просто для вашей информации, tedious устарел способ использования конфигурации. Рабочий пример выглядит следующим образом:

 var config = {
    server: "localhost",
    authentication: {
        type: "default",
        options: {
            userName: "yourusername",
            password: "yourpassword"
       }
    },
 };
  

утомительная проблема с Github, в которой упоминается это.