随笔 - 326,  文章 - 0,  评论 - 0,  阅读 - 16万
Nodejs Mysql 执行多条SQL语句
最近用 Nodejs + Express + Mysql 写接口碰到一个需要四表联查的接口。。。我特么只会连两张表啊~!网上百度了一波四表联查,由于我接口的数据相对比较复杂,果不其然,最终以凉凉告终,生活的压力最终迫使我向 SQL 妥协了。于是换了个思路,执行多条 SQL ,嘻嘻 ,特么成功啦~!!

Nodejs Mysql 默认情况下不允许执行多条查询语句,要使用多条查询语句的功能,就需要在创建数据库连接的时候打开这一功能:

var connection =  mysql.createConnection({ multipleStatements: true });
这一功能打开以后,就可以同时使用多条查询语句:

router.get("/test", function (req, res) {
    let params = req.query;
    let query = "SELECT * FROM table1 WHERE id=?; SELECT * FROM table2 WHERE aid=?";
    let queryParams = [params.id, params.aid];

    CONNECTION = mysql.createConnection(CONFIG);
    CONNECTION.connect();
    CONNECTION.query(query, queryParams, function (err, result) {
        if (err) {
            console.log('[SELECT ERROR] - ', err.message);
            res.send({code: -1, msg: "服务异常"});
            return;
        }

        console.log(result[0]);
        console.log(result[1]);

        res.send({code: 0, result: result});
    });
    CONNECTION.end();
});
连接数据库配置

let CONFIG: {
    host: 'localhost',
    user: 'root',
    password: 'root',
    port: '3306',
    database: 'testDatabase',
    timezone: "08:00",
    multipleStatements: true // 开启同时执行多条SQL
};

参考: https://www.lihuyong.com/archives/1267

posted on   文种玉  阅读(785)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
历史上的今天:
2021-01-06 将PDF文件转MD
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示