我目前正在尝试使用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
)即使我在创建连接时选择了数据库,也只会显示错误“未选择数据库”。
答案 0 :(得分:0)
由于有了一点提示,我才得以解决。在我的情况下,这是因为数据库的字符串未定义,因为创建连接后我做了一些工作来加载.env
文件。确保始终在开始时放这样的东西! :)