小果运维 2021-05-12 08:37 采纳率: 0%
浏览 62

后端express,mysql 复杂查询结果同步返回问题

function dbquery(querysql) {
        pool.getConnection((err, conn) => {
            if (err) {
                console.log(CurentTime() + "数据库连接出错!" + err);
                return
            } else {
                console.log(CurentTime() + "数据查询ing!");
                conn.query(querysql, (err, qresults) => {
                    if (err) {
                        conn.release();
                        console.log(CurentTime() + "数据库查询出错!" );
                    } else if (qresults == "" || qresults == []) {
                        conn.release();
                        console.log(CurentTime() + "未查询到相应数据!");
                    } else {
                        conn.release();
                        console.log(CurentTime() + "数据返回成功!");
                    }
                });
            }
        });
};


router.post("/testapi",(req,res)=>{
    const query = 'select * from user_account '
    const queryData = dbquery(query);
    res.json({ 'code': 200, 'result': JSON.stringify(queryData) });
});

像这样,我想在api中查询后将查询到的数据返回到参数,然后对参数结果进行判定后再response,应该怎么修改? 目前函数调用正常,但异步返回值没有返回到queryData里面。

  • 写回答

8条回答 默认 最新

  • 关注

    打印一下queryData有没有查询到数据,dbquery应该返回查询结果。

    评论

报告相同问题?