首页 > 解决方案 > 在 node.js 应用程序中使用参数中的变量从 sqlite 数据库中查询数据

问题描述

所以我正在用 discord.js 制作一个不和谐的机器人,但不太确定如何去做,已经环顾了一段时间。

    var server = member.guild.id;
    db.all("SELECT channelMessage FROM userHelp WHERE serverId = server", function(err, rows){
            rows.forEach(function (row) {
                console.log("Message is " + channelMessage);
            })
        });

我知道这不会真正起作用,但这基本上是我的目标,第 2 行中的“WHERE”子句使用先前定义的变量作为其参数。老实说,我非常缺乏经验,因此非常感谢任何帮助。

谢谢!

标签: javascriptnode.jssqlitediscord.js

解决方案


只要server变量不是来自用户输入,您就可以将其插入到查询字符串中。在较新版本的javascript(我相信es2015及更高版本)中,您应该能够:

var server = member.guild.id;

db.all(`SELECT channelMessage FROM userHelp WHERE serverId = ${server}`, ...)

推荐阅读