NodeJS mySQL 显示旧数据集

Posted

技术标签:

【中文标题】NodeJS mySQL 显示旧数据集【英文标题】:NodeJS mySQL showing old data sets 【发布时间】:2020-07-13 22:12:51 【问题描述】:

自从我试图解决这个问题已经一天了,但我无法弄清楚。

如果用户 id 还没有在表中,这将成功输入到表中。

   con.query(`SELECT * FROM user WHERE id = $user`, (err, rows) => 
       if(err) throw err;

       let sql;

       if(rows.length <1) 
       sql = `INSERT INTO user (id, xp) VALUES ($user, $genXP)`;
    

 con.query(sql)
);

但是当尝试使用它从中读取时

function queryXP() 
    con.query(`SELECT xp FROM user WHERE id = $user`, (err, rows) => 
    if(err) throw err;
    planID = rows
  );

即使重启 bot 和 mysql 也总是输出这个

      throw err; // Rethrow non-MySQL errors
      ^

Error: ER_EMPTY_QUERY: Query was empty

如果我手动检查它显然存在

MariaDB [bot]> select * from user;
+--------------------+------+
| id                 |  xp  |
+--------------------+------+
| 355871581752524801 |    4 |
| 193289250068889600 |    4 |
| 305921615282307083 |    1 |
| 693853122728296538 |    1 |
+--------------------+------+
4 rows in set (0.000 sec)

MariaDB [bot]> 

请帮帮我。

【问题讨论】:

【参考方案1】:

我在这里可能错了,但查询中的xp 不应该是大写字母吗?它在您发布在底部的表格中显示资本

【讨论】:

抱歉,当我把它粘贴到这里时它应该是小写的,它看起来很奇怪,所以我不得不重新输入一些东西。感谢您指出这一点。 尝试console.log user,有什么返回吗?

以上是关于NodeJS mySQL 显示旧数据集的主要内容,如果未能解决你的问题,请参考以下文章

nodejs查询数据库后,获取result结果集并赋值返回

tomcat dbcp 和 mysql 连接池

mysql查询的时候有些列明明有数据但是查询结果集显示为Null

delphi 数据集刷新问题

MySql查询具体某个时间段数据,结果集如何补全该时间段的所有记录并且标记为空值(时间显示除外)

MySQL 5.7.10 自动备份自动清理旧备份集