首页 > 解决方案 > Discord.js XP系统

问题描述

我想用 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);
});

标签: mysqlsqldiscord.js

解决方案


抱歉回复晚了,我刚看到这篇文章,我之前遇到过这个错误你应该做的是:运行ALTER [TABLE_NAME] MODIFY [COLUMN_NAME] BIGINT NOT NULL PRIMARY KEY; =>为什么必须这样做是因为当你试图存储作者的 id 时,它试图但不和谐member id 的位数多于 INT 类型的范围,因此如果您执行 BIGINT,则可以将 id 存储在其中,然后您可以继续执行该程序


推荐阅读