Mysql 的 Express 查询返回 null

标签 mysql node.js express

我在服务器端使用express。 这是代码:

// router
const database = require('../services/database-service');

router.get('/allreviews', function (req, res, next) {
    let reviewsSql =
        'select r.reviewId, r.username, r.time, r.reviewText, r.visit, ri.fileName ' +
        'from (select min(reviewImgId) as imgId, reviewId ' +
        'from ReviewImgs ' +
        'group by reviewId) img, Reviews r, ReviewImgs ri ' +
        'where img.imgId=ri.reviewImgId and ri.reviewId=r.reviewId;';

    database.query(reviewsSql, function (result) {
        console.log(result);   // NULL
        res.send(result);
    });
});

// database-service.js
const mysql=require('mysql');

module.exports = {
    query: function (sql, data, fn) {
        const connection = mysql.createConnection({
            host     : '127.0.0.1',
            user     : 'root',
            password : 'xxxxxxxxx',
            database : 'Movie',
            port:'3306'
        });

        connection.connect();

        connection.query(sql, data, function (error, result) {
            if (error){
                console.log(error);
                return;
            }

            fn(result);
        });

        connection.end();
    }
};

问题是查询结果总是为空。但是,我在mysql命令行中执行sql查询代码,结果是一个包含3行的集合,这正是我想要的。那么发生了什么?

最佳答案

尝试这样做

// database-service.js
const mysql=require('mysql');

const connection = mysql.createConnection({
            host     : '127.0.0.1',
            user     : 'root',
            password : 'xxxxxxxxx',
            database : 'Movie',
            port:'3306'
        });

connection.connect();

module.exports = connection;

//执行查询

 database.query(reviewsSql, function (err, result) {
        console.log(result);   // NULL
        res.send(result);
    });

关于Mysql 的 Express 查询返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53337524/

相关文章:

php - 首页显示,但子页面显示require_once错误

mysql - 我试图在 phpmyadmin 中运行此查询,但它显示错误

javascript - 我想将其存储在redis中

javascript - 如何将node.js服务器应用程序编译为可执行文件?

mysql - 如何修复 NOT NULL 错误(错误代码 : 1064)?

c# - 使用 mysql 只搜索数字

node.js - Typescript TS2339 属性不存在

javascript - 监视目录并尽快处理完整的新文件

javascript - 使用 ExcelJS 创建转换流以编写 xlsx

javascript - Express 出现错误 : Can't set headers after they are sent