在Db Browser中为SQLite执行但在node.js中执行时,SQL Query起作用

时间:2019-05-24 00:32:04

标签: sql node.js sqlite discord.js

在DB Browser中运行SQLite而不在node.js代码中运行时,SQL语句运行得很好。我需要进行任何更改吗?

我创建了一个查询,如果指定的值不存在,则将值插入表中;如果确实存在,则将UPDATE值插入表中。 在用于SQLite的数据库浏览器中运行时,查询工作正常,但是当我尝试在代码中实现该查询时,UPDATE语句有效,但INSERT语句无效,没有错误返回。为什么会这样?


 let sql2 = `UPDATE inventory 
  SET item_name = '${itemChosen}', item_amount = ${amountChosen) where discordId = '${user}';

 INSERT INTO inventory (discordId,item_name,item_amount) 
 select '${user}','${itemChosen}',${amountChosen}
 WHERE (Select changes() = 0);`;
 db.all(sql2, [], (err, rows) => {
  if (err) {
     throw (err)
    }
  message.reply("Item purchased!");
})

UPDATE语句工作正常,但是INSERT语句将永远不会执行。没有错误消息返回。

0 个答案:

没有答案