节点MSSQL“TypeError:req.query不是函数”错误

时间:2017-03-06 14:33:40

标签: sql-server node.js

const express = require('express');
const router = express.Router();

var sql = require("mssql");

var dbconfig = {
 server: "srv-sql-002.alpaca.int",
 user: "stagiair1",
 password: "Rainbow80",
 options: {
    database: "Calamares"
 }
};



/* GET api listing. */
router.get('/', (sqlReq, res) => {
 res.send('api works');
});

// Get all posts
 router.get('/posts', (req, res) => {
sql.connect(dbconfig, function (err) {
    var request = new sql.Request();
    if (err) {
        console.log(err);
        return;
    }
    request.query('SELECT TOP (10) u.* FROM [Alg].[User] AS u;', function (err, recordset) {
        console.log("in query function");
        if (err) {
            console.log(err);
            return;
        }
        else {
            res.end(JSON.stringify(recordset));
        }
    });
    request.query();
});
});

module.exports = router;

此代码生成错误,任何想法我做错了什么? 它可以在Node控制台应用程序中运行,但不能作为API在Web应用程序中运行。 提前谢谢!

(为了添加我的所有代码,我必须添加更多文本.... Lorem ipsum dolor坐下来,精致的adipistur elit。 Aenean interdum,elit sit amet rhoncus placerat,tellus lorem aliquet sapien,ac rhoncus ipsum turpis nec metus。 Donec坐在一起。在hac habitasse platea dictumst。 Donec hendrerit felis eget semper mollis。 Aliquam idequat nibh in dolor sollicitudin dictum。 Mauris non mollis est.Vostibulum dictum mi efficitur,maximus leo id,ultrices urna。 Cras aliquam libero nec odio porttitor,in placerat tortor aliquam。 Aenean enim eros,sagittis nec aliquet nec,placerat id nunc。 Nunc dolor purus,blandit坐amet odio viverra,ultrices fermentum nisi。 Nullam dictum vitae augue eu semper。 Nam vulputate ipsum vel lorem pretium,vel efficitur orci fringilla。 Aliquam diam erat,rhoncus vel lacus laoreet,eleifend ultrices augue。 Ut vitae sapien magna。 Sed eleifend,tellus quis commodo elementum,felis tortor ultricies nibh,nec congue tortor ipsum eget erat。)

更新

将代码更改为工作版本,只尝试了100种不同的组合,这个组合起作用。 谢谢大家的帮助!!!!

1 个答案:

答案 0 :(得分:0)

您应该将数据库访问请求对象命名为reqsqlReq或其他)之外的其他内容,这是此上下文中的express请求对象。

编辑:我已经查看了npm页面上的示例,您应该尝试将sqlQuery.query替换为conn.query - 如果这有效,则您不需要req / sqlReq对象。