0

每当我运行命令时,我得到you have undefined的不是 SQLite 数据库中输入的数字。

if (command === "bal") {

        if (message.author.bot) return;

        const data = sql.prepare(`SELECT ${args} FROM ${'acc' + message.guild.id + message.member.id}`).get();

        message.channel.send(`You have ${data.args}`)
    }
4

1 回答 1

0

在选择请求之前尝试添加.catch()块来处理错误和等待。像这样:

      if (command === "bal") {

            if (message.author.bot) return;

            const data =  await sql.prepare(`SELECT ${args} FROM ${'acc' + message.guild.id + message.member.id}`).get().catch((err) => {
                    console.log(err);
            });


            message.channel.send(`You have ${data.args}`)
        }

看起来您尝试从带有名称 ${'acc' + message.guild.id + message.member.id}的表中选择,并且表不存在。

正确的语法如下:

SELECT COLUMNS NAMES FROM TABLE NAME HERE WHERE FIELD = somethink

于 2020-03-18T06:28:57.557 回答