在此代码中,我更新了 BOOKS 行,尝试不将 TITLE 列的值设置为 null,因为在 myPojo
中为 null 并且我不想覆盖它(即,我尝试排除更新专栏):
BooksRecord rec = new BooksRecord();
rec.from(myPojo);
context.update(BOOKS)
.set(rec)
.set(BOOKS.TITLE, BOOKS.TITLE)
.where(BOOKS.SK.eq(sk))
.execute();
但这不起作用,TITLE 列设置为 null。有办法让它工作吗?
最佳答案
这样做:
BooksRecord rec = new BooksRecord();
rec.from(myPojo);
rec.reset(BOOKS.TITLE);
rec.update();
调用Record.reset(Field)
重置字段的基础 Record.changed()
在执行任何进一步操作之前标记,例如 Record.update()
,或者像您一样将记录的更改值复制到 Update
语句中。
关于java - jOOQ:在更新中排除列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60713131/