java - 如何使用唯一列更新行

标签 java hibernate

我的数据库架构具有唯一列CONSTRAINT CLASSA_FIELD UNIQUE (FIELD)。我需要更新此表中的行,但是当我调用 update/flush 时,我收到 java.sql.BatchUpdateException: ORA-00001: 违反了唯一约束 (DBSCHEMA.IDX_CLASSA_FIELD)。。 我尝试添加 updatable = false 注释、merge(entity) 但它们都不起作用。有什么提示如何更新此类行吗?

最佳答案

通常,当您对数据库字段有唯一约束时,这意味着该字段中的值必须相对于表的所有行中该字段中的所有其他值是唯一的。因此,为了帮助回答这个问题,我建议您让我们知道您尝试将该字段更新为什么值。另外,“行”表明您正在尝试更新多行,可能具有相同的值。如果这是真的,那就是你的问题了。

关于java - 如何使用唯一列更新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56059331/

相关文章:

java - HQL:隐式关联加入不起作用

java - AcceptHeaderLocaleResolver 错误

java - 我应该使用 hibernate 二级缓存吗?

java - 忽略 hibernate native 查询中的空列表

java - ManyToOne 单向禁用约束

java - Ehcache - 为什么条目这么大?

java - 事件正在引发链式 react

java - 验证多层应用程序输入数据的最佳实践

Java 自动转换对象

java - 如何保存列表中的非常100条记录