我正在尝试创建一个查询,例如:
INSERT INTO users (id, level)
VALUES (1, 0)
ON CONFLICT (id) DO UPDATE
SET level = users.level + 1;
但是我看不到如何用opaleye做到这一点?不支持吗?
奇怪的是,我们用字段Insert
定义了iOnConflict :: Maybe OnConflict
。但是OnConflict
的定义为:data OnConflict = DoNothing
,所以现在看起来只是一个占位符?
在github上列出的问题之后,我看到它导致了最终的PR:https://github.com/tomjaguarpaw/haskell-opaleye/pull/385/files,但我真的无法理解吗?我不确定它是仅实现占位符,还是实际上实现了功能。
答案 0 :(得分:2)
首先,如果您会回答此类问题,通常会更快,甚至可能更好 file a new issue on the Opaleye repo。
Opaleye当前仅支持ON CONFLICT DO NOTHING
。我很高兴研究支持更多功能。请通过新期刊或在a relevant existing one上收听。