Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 正在更新存储的信息,但每次尝试更新时都会出错_Javascript_Node.js_Discord.js_Mysql2 - Fatal编程技术网

Javascript 正在更新存储的信息,但每次尝试更新时都会出错

Javascript 正在更新存储的信息,但每次尝试更新时都会出错,javascript,node.js,discord.js,mysql2,Javascript,Node.js,Discord.js,Mysql2,所以我的问题是,当我试图删除警告并在数据库中更新它时,我遇到了一个非常恼人的错误。我不知道什么是错误的,但如果我写的一切正确,那么它应该正常工作,但它给出了一个错误。。。当我键入以删除警告时,它会从用户数据库中删除1,然后将警告ID设置为0(警告和警告ID分别存储)。警告ID工作正常,但删除警告计数(wn=警告编号,wid=警告ID)是个问题。我需要从中删除1,但它会引发以下错误: (--=因为有我的名字而被删) 所以,是的,我不知道我的代码有什么问题,但它就是不起作用。我尝试了许多不同的方法来

所以我的问题是,当我试图删除警告并在数据库中更新它时,我遇到了一个非常恼人的错误。我不知道什么是错误的,但如果我写的一切正确,那么它应该正常工作,但它给出了一个错误。。。当我键入以删除警告时,它会从用户数据库中删除1,然后将警告ID设置为0(警告和警告ID分别存储)。警告ID工作正常,但删除警告计数(wn=警告编号,wid=警告ID)是个问题。我需要从中删除1,但它会引发以下错误:

(--=因为有我的名字而被删)


所以,是的,我不知道我的代码有什么问题,但它就是不起作用。我尝试了许多不同的方法来修复它,但是没有一种有效。

哦,它只是自己修复了它,我知道它是如何修复的,但它现在可以工作了。我没有编辑任何代码。所以我不能在这里发布解决方案

Error: 

    throw er; // Unhandled 'error' event
      ^

Error: Unknown column 'NaN' in 'field list'
    at Packet.asError (C:\Users\------\Desktop\Te\node_modules\mysql2\lib\packets\packet.js:712:17)
    at Query.execute (C:\Users\------\Desktop\Te\node_modules\mysql2\lib\commands\command.js:28:26)
    at Connection.handlePacket (C:\Users\-----\Desktop\Te\node_modules\mysql2\lib\connection.js:417:32)
    at PacketParser.onPacket (C:\Users\-----\Desktop\Te\node_modules\mysql2\lib\connection.js:75:12)
    at PacketParser.executeStart (C:\Users\-----\Desktop\Te\node_modules\mysql2\lib\packet_parser.js:75:16)
    at Socket.<anonymous> (C:\Users\-----\Desktop\Te\node_modules\mysql2\lib\connection.js:82:25)
    at Socket.emit (events.js:315:20)
    at addChunk (_stream_readable.js:295:12)
    at readableAddChunk (_stream_readable.js:271:9)
    at Socket.Readable.push (_stream_readable.js:212:10)
Emitted 'error' event on Query instance at:
    at Query.execute (C:\Users\-----\Desktop\Te\node_modules\mysql2\lib\commands\command.js:33:14)
    at Connection.handlePacket (C:\Users\-----\Desktop\Te\node_modules\mysql2\lib\connection.js:417:32)
    [... lines matching original stack trace ...]
    at Socket.Readable.push (_stream_readable.js:212:10)
    at TCP.onStreamRead (internal/stream_base_commons.js:186:23) {
  code: 'ER_BAD_FIELD_ERROR',
  errno: 1054,
  sqlState: '42S22',
  sqlMessage: "Unknown column 'NaN' in 'field list'"
}
if(args[1] === "remove" && message.member.roles.cache.has(rls.Adminid) || message.member.roles.cache.has(rls.SAdminid) || message.member.roles.cache.has(rls.HAid) || message.member.roles.cache.has(rls.CAdminid) || message.member.roles.cache.has(rls.oid)){
  if(!message.mentions.users.first()){
    message.reply("Mention a user to remove a warning from.");
    return;
  }
  var u = message.mentions.users.first();
                    
  if(rows[0].wid === args[3]){
  if(!args[2]){
    message.reply("Please may you add a warning ID to it?")
    return;
  }
   let waid = parseInt(args[2]);
  con.query(`SELECT * FROM warns WHERE id = ${u.id} AND wid = ${waid}`, (err, rows) => {
    if (err) throw err;
    let sql;
    if(rows.length < 0){
      sql = `INSERT INTO wrni (id, wn) VALUES (${u.id}, '0')`;
      con.query(sql);   
     }
    sql = `UPDATE wrni SET wn = ${rows[0].wn - 1} WHERE id = ${u.id}`;
    con.query(sql);
    sql = `UPDATE warns SET wid = 0 WHERE wid = ${args[2]}`;
    con.query(sql);
    let emb = new MessageEmbed()
    .setAuthor("Warning has been removed!", u.displayAvatarURL())
    .addField("From user:", u.tag, true)
    .addField("User's ID:", u.id, true)
    .addField("Moderator:", message.author.tag)
    .addField("Warn ID:", waid)
    .setColor("GREEN");
    let c = message.guild.channels.cache.find(c => c.id === "706906999828250734")
    c.send(emb);
    message.channel.send("Warning removed from " + u.tag + "! User now has: " + rows[0].wn + " warnings!");
    return;
  })
SELECT * FROM wrni;
+--------------------+----+
| id                 | wn |
+--------------------+----+
| 342364288310312970 |  2 |
| 317644533208711169 |  0 |
+--------------------+----+


SELECT * FROM warns;
+--------------------+--------+
| id                 | wid    |
+--------------------+--------+
| 1000               | 0      |
| 342364288310312970 | 0      |
| 317644533208711169 | 0      |
| 342364288310312970 | 0      |
| 342364288310312970 | 0      |
| 342364288310312970 | 0      |
| 342364288310312970 | 0      |
| 342364288310312970 | 991839 |
| 342364288310312970 | 0      |
| 342364288310312970 | 411735 |
+--------------------+--------+

0 = Warn removed
Random numbers = Warn remaining.