如何修复NodeJS中pg依赖产生的“错误:“末端”或附近“语法错误”错误?

时间:2019-02-18 19:49:13

标签: node.js database postgresql

我对Postgres还是陌生的(刚开始大约30分钟到一个小时前),但我已经陷入了错误((node:33564) UnhandledPromiseRejectionWarning: error: syntax error at or near "end")。

目前,我正在为Discord僵尸程序制作赠品系统,即使僵尸程序重新启动,我也希望赠品仍然存在,这使我转向了数据库的postgres。

这是我试图用来向数据库添加赠品的代码。

client.query(`INSERT INTO discord.giveaways (content, end, channel, winners, message)
    VALUES($1, $2, $3, $4, $5)`, [content, end, channel, winners, message]);

此代码返回以下错误:(node:33564) UnhandledPromiseRejectionWarning: error: syntax error at or near "end"被调用。

每个变量的值如下:

[
  'hello',
  1550518888972,
  '539577989197856776',
  1,
  '547140492039684097'
]

discord.giveaways模式的列:

1 个答案:

答案 0 :(得分:1)

您的列名end是保留关键字(请参见postgres docs)。

您可以重命名列名,也可以使用"对其进行转义。

尝试:

INSERT INTO discord.giveaways (content, "end", channel, winners, message) VALUES ($1, $2, $3, $4, $5);