3

我正在尝试创建一个查询,例如:

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但我真的无法理解它吗?我不确定它是仅实现占位符,还是实际上实现了功能。

4

1 回答 1

2

首先,如果您在 Opaleye repo 上提交新问题,您通常会更快,可能更好地回答这些类型的问题 。

Opaleye 目前仅支持ON CONFLICT DO NOTHING. 不过,我很高兴研究支持更多功能。请加入新问题或相关现有问题。

于 2020-06-06T12:13:49.073 回答