我想使用mysqli为我的机器人Hello Bot创建一个xp系统,但是我的代码确实可以工作。不是错误,因为我现在第一次写书,将它放在数据库中,但是其他人会将它在数据库中保存两次
我的代码:
con.query(`SELECT * FROM xp WHERE id = '${message.author.id}'`, (err, rows) => {
if (err) throw err;
let sql;
if (rows.length < 1) {
sql = `INSERT INTO xp (id, xp) VALUES ('${message.author.id}', 30)`;
}
else {
let xp = rows[0].xp;
sql = 'UPDATE xp SET xp = ' + xp + 30;
}
con.query(sql);
});
答案 0 :(得分:0)
对不起,您的回复太晚了,我刚刚看到了这篇文章,之前我曾遇到此错误
您应该做的是:运行ALTER [TABLE_NAME] MODIFY [COLUMN_NAME] BIGINT NOT NULL PRIMARY KEY;
=>之所以必须这样做是因为,当您尝试存储作者的ID时,它试图这样做,但是不和谐的成员ID的位数比INT类型的范围多,所以如果您可以将ID存储在BIGINT中,然后继续执行程序