Kotlin Exposed - 如果不存在和冲突,如何插入?

Dev*_*909 5 kotlin kotlin-exposed

我环顾四周,但似乎无法找到如何使用 Kotlin 的 Exposed SQL 框架“在不存在时插入”或“在冲突时插入”。我目前正在编写原始 SQL 语句并按原样执行它们。我认为在某些情况下我无法避免这种情况,但如果可能的话,我更愿意使用该框架。我没有看到 DSL 或 DAO 语法的任何选项。

编辑:

对于可能遇到此问题的任何人,Tapac 的评论对我有用。

将 Table.insertIgnore() 用于“如果不存在则插入”,并且在https://github.com/JetBrains/Exposed/wiki/FAQ#q-is-upsert-supported 中存在一个 upsert 示例。

Tap*_*pac 9

您可以尝试使用 Table.insertIgnore 表示“如果不存在则插入”,并使用 upsert github.com/JetBrains/Exposed/wiki/FAQ#q-is-upsert-supported表示“冲突时插入”。