В настоящее время я следую учебнику на Youtube по поводу nodejs и mssq. Следуя инструкции, я столкнулся с проблемой подключения к сети. Поскольку видео 5 лет назад, плагин nodejs изменился сверхурочно (mssq / tedious).
Моя версия сейчас 6.2.0 для mssql / tedious (последняя версия)
Это не так используя "sql .Connection (config)" больше. Многие люди сообщали, что изменение sql .Connection (config) на sql .ConnectionPool (config) решило их проблемы.
, но для меня это не так.
Ниже вы найти 3 файла, но строка, которая делает его go плохим, - вот этот (connect. js):
var conn = new sql.ConnectionPool(config);
конфигурация на самом деле такая:
exports.config = {
user: 'dataGetter',
password: '1234',
server: 'localhost',
database: 'cegeptest',
};
Ошибки:
TypeError: sql.ConnectionPool is not a constructor
at Object.exports.connectDatabase (C:\_Programming\Work\InventoryCegep\database\connect.js:7:14)
at Object.exports.getList (C:\_Programming\Work\InventoryCegep\database\queries\villes.js:5:11)
at C:\_Programming\Work\InventoryCegep\routes\villes.routes.js:6:10
at Layer.handle [as handle_request] (C:\_Programming\Work\InventoryCegep\node_modules\express\lib\router\layer.js:95:5)
at next (C:\_Programming\Work\InventoryCegep\node_modules\express\lib\router\route.js:137:13)
at Route.dispatch (C:\_Programming\Work\InventoryCegep\node_modules\express\lib\router\route.js:112:3)
at Layer.handle [as handle_request] (C:\_Programming\Work\InventoryCegep\node_modules\express\lib\router\layer.js:95:5)
at C:\_Programming\Work\InventoryCegep\node_modules\express\lib\router\index.js:281:22
at Function.process_params (C:\_Programming\Work\InventoryCegep\node_modules\express\lib\router\index.js:335:12)
at next (C:\_Programming\Work\InventoryCegep\node_modules\express\lib\router\index.js:275:10)
Заранее спасибо за помощь:)
Вот код, связанный с этим:
villes.routes. js
const router = require('express').Router();
const villes = require('../database/queries/villes.js');
router.get('/', (req, res) => {
//database.getList(req, res);
villes.getList(req, res);
res.render('villes');
});
module.exports = router;
villes. js
var connect = require('../connect');
//CRUD pour villes
exports.getList = function (req, res) {
connect.connectDatabase('SELECT * FROM Ville', function (data, err) {
if (err) {
res.writeHeader(500, 'Internal error occured', {
'Content-Type': 'text/html',
});
res.write(
'<html><head><title>500</title></head><body>500: internal error. Details: ' +
err +
'</body></html>'
);
} else {
res.writeHeader(200, { 'Content-type': 'application/json' });
res.write(JSON.stringify(data));
}
res.end();
});
}; //sortir la liste complète des villes
connect. js
var sql = require('mssql'); //On call le module microsoft Sql (Installer avec : npm i mssql)
var config = require('../settings').config; //On va chercher notre configuration exportée dans database/config.js
//sql.connect(config).then((pool) => {});
exports.connectDatabase = function (sql, callback) {
var conn = new sql.ConnectionPool(config);
console.log(conn);
};