使用jooq 3.11.8,在onConflictOnConstraint
中引用一个约束并不是特别容易被发现,而且文档也完全没有帮助。我知道约束的名称,但是onConflictOnConstraint
不接受String
。
明确地:
ctx.insertInto(
TABLE,
TABLE.ID,
TABLE.FIELD1
)
.values(
id,
value
)
.onConflictOnConstraint(/* WHAT GOES HERE? */)
.doUpdate()
.set(TABLE.FIELD1, value)
.execute();
我错过了什么?
最佳答案
此方法有3个重载:onConflictOnConstraint(Constraint)
:在通过DSL.constraint()
定义的约束(即DDL API)中使用onConflictOnConstraint(Name)
:与DSL.name()
一起使用,这是一种创建特殊标识符引用的方法onConflictOnConstraint(UniqueKey)
:对生成表中生成的UniqueKey
引用使用此选项,例如从Table.getPrimaryKey()
获取的引用