【发布时间】:2019-03-03 08:42:41
【问题描述】:
我需要在 Hibernate 中添加 2 个查询。
在存储库中,我已经完成了这种类型的查询,如果可以这样命名,但问题是使用 alter 是我第一次,因为通常我们只在存储库中使用 select。
我的例外是这个,只针对第一个查询,因为我已经注释掉了第二个,但它发生了同样的情况:
Caused by: java.lang.IllegalArgumentException:
Validation failed for query for method public abstract com.xitee.ccpt.entity.ProjectEmployee com.xitee.ccpt.repository.ProjectEmployeeRepository.dropConstraint()!
at org.springframework.data.jpa.repository.query.SimpleJpaQuery.validateQuery(SimpleJpaQuery.java:87).
Caused by: java.lang.IllegalArgumentException: node to traverse cannot be null!
有谁知道我该如何修复或我的代码有什么问题?
【问题讨论】:
-
通常您不想在运行时删除/添加约束,原因之一是如果多个客户端同时执行此操作,则会失败。您是否尝试通过暂时删除约束来解决约束错误?
-
是的,我有一个菜单,如果用户想要编辑,我必须先保存它,因为我检查了时间间隔的代码并保存正确的。所以这个约束确实允许这样做,所以我尝试在编辑的情况下禁用/删除并在保存后再次创建它
-
在大多数用例中,您希望约束始终有效。在将数据发送到数据库之前,您的应用程序中可能应该进行一些验证。
-
在这种情况下只是片刻,我对代码有限制,因为除了编辑之外没有方法但可以删除旧的并创建新的,我必须看看是否有日期没有崩溃/相同。
-
您能帮我找到解决方案吗? @纪尧姆
标签: java sql spring postgresql hibernate