SQL查询中v附近或v处的语法错误,但它不';行不通

SQL查询中v附近或v处的语法错误,但它不';行不通,sql,postgresql,asyncpg,Sql,Postgresql,Asyncpg,好的,我正在开发这个webhookserver并存储一些数据。 我尝试了这个,但是得到了一个模棱两可的错误 插入投票用户数据(不一致id、总投票数、分数、上次投票) 数值(257073333273624576,2150,'2021-04-22') 关于冲突(不和谐) 更新集合总投票数=总投票数+2,点数=点数+150,最后投票数='2021-04-22' 其中discord_id=257073333273624576; 这不管用,所以有人在stackexchange邮件回复这个问题时让我喝醉了

好的,我正在开发这个webhookserver并存储一些数据。 我尝试了这个,但是得到了一个模棱两可的错误

插入投票用户数据(不一致id、总投票数、分数、上次投票)
数值(257073333273624576,2150,'2021-04-22')
关于冲突(不和谐)
更新集合总投票数=总投票数+2,点数=点数+150,最后投票数='2021-04-22'
其中discord_id=257073333273624576;
这不管用,所以有人在stackexchange邮件回复这个问题时让我喝醉了

我试过那个帖子,但也没用

插入投票用户数据v(不一致id、总投票数、分数、上次投票)
冲突的价值观(257073333273624576,2150,'2021-04-22')(v.discord_id)
更新集合v.total_voces=EXCLUDED。total_voces+2,v.points=EXCLUDED。points+150,v.last_voces='2021-04-22'
其中v.discord_id=2570733332733624576;
我不太明白怎么了?它告诉我第一行中“v”附近或处的语法错误

编辑:我用表名更改了v,现在在
vote\u user\u data.discord\u id)

插入投票用户数据(不一致id、总投票数、分数、上次投票)
冲突值(257073333273624576,2150,'2021-04-22')(投票\用户\数据。不一致\ id)
更新集合投票用户数据。总投票数=排除。总投票数+2,投票用户数据。点数=排除。点数+150,投票用户数据。最后投票数='2021-04-22'
其中,vote_user_data.discord_id=2570733332733624576;

这将修复您的语法错误:

INSERT INTO vote_user_data (discord_id, total_votes, points, last_voted) 
    VALUES (257073333273624576, 2, 150, '2021-04-22')
ON CONFLICT (discord_id) DO UPDATE
    SET total_votes = EXCLUDED.total_votes+2,
        points = EXCLUDED.points + 150,
        last_voted = '2021-04-22'
    WHERE vote_user_data.discord_id = 2570733332733624576;

是一个dbfiddle。

“`ERROR:syntax ERROR at or near”)”第3行:关于冲突(vote_user_data.discord_id)是否更新^SQL state:42601 Character:167``Nope不起作用,错误在^byggmesterpre之上^。我在这个精确的查询中加入了一个dbfiddle(为了可读性,我确实添加了换行符,但它仍然有效)。谢谢你,Gordon,尽管问题不是SQL,而是我使用的数据库不支持SQL中的ON CONFLICT函数。