0

我目前正在尝试使用用于数据库连接的 mysql2 包制作一个小的 Discord Bot。当我这样设置我的数据库时:

const con = mysql.createConnection({
    host: process.env.DB_HOST,
    user: process.env.DB_USER,
    database: process.env.DB_DATABASE,
    password: process.env.DB_PASSWORD,
    port: process.env.DB_PORT
});

(我的 .env 文件中的数据是 100% 正确的)然后执行如下查询:

client.database.query("SELECT * FROM `guilds_settings` WHERE `guild` = ?", [message.guild.id], (err, results) => {
        if(err) {
            return client.log.error("Failed loading language for guild " + message.guild.id + ": " + err);
        }
        message.reply(results[0].language);
});

( client.database= con) 这只是给我错误“未选择数据库”,即使我在创建连接时选择了数据库。

4

1 回答 1

1

感谢 esqew 的一点提示,我得以修复它。在我的情况下,这是导致我的数据库字符串未定义,因为我.env在创建连接后做了加载文件的工作。一定要把这样的东西放在开头!:)

于 2019-09-05T15:37:03.820 回答