我正在将Spring Hibernate与HibernateSupportDao一起使用,当我尝试发送多行数据以存储在我的数据库中时,它会在特定行上引发DataIntegrityViolationException
。相同的方案在保留在同一表的任务中起作用。即使为当前任务使用相同的代码,我也没有遇到问题。为什么会抛出DataIntegrityViolationException
,我该如何纠正?
最佳答案
Directly from the API:
当尝试插入或更新数据导致违反完整性约束时引发异常。注意,这并不是纯粹的关系概念。大多数数据库类型都需要唯一的主键。
基本上,这意味着休眠尝试执行某些操作,但是数据库引发了异常。最常见的情况是您要删除父级,而不是删除具有该父级外键的子级。
您的传递持久性(即级联)设置是什么?