Hibernate 唯一性字段

发布于 12-10 10:54 字数 374 浏览 0 评论 0原文

我有一个名为 Iteraction 的类,此迭代有许多特殊字段,我想一起验证三个字段(startDate、endDate 和 Project)的唯一性,Project 是一个类。

我尝试做类似的事情:

@Table(uniqueConstraints = {@UniqueConstraint(columnNames={"startDate", "endDate", "project_id"})})

但不起作用,我想对我的验证说的是:我只能数据库中有一个具有相同 startDade、endDate 和 project_id 的迭代寄存器:

在 Rails 代码中,我可以使用 Scope 来实现这一点,但使用 hibernate 我不知道怎么样,有人可以帮助我吗?

I have a class called Iteraction this iteration have many fields in special i want do a validation of uniqueness for three fields together (startDate, endDate and Project), Project is a class.

I try do something like that:

@Table(uniqueConstraints = {@UniqueConstraint(columnNames={"startDate", "endDate", "project_id"})})

But dont work, what a want say to my validation is: i can only have ONE register of iteration in database with the same startDade, endDate and project_id:

In Rails Code i can use Scope for that, but using hibernate i don't know how, can someone help me?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

指尖上得阳光2024-12-17 10:54:01

快速浏览一下文档就会发现语法有点不同:

@Table(name="whatever", uniqueConstraints=@Unique(columnNames={"startDate","endDate", "project_id"))

希望有帮助。

还有一个答案是 JPA 中的唯一约束检查​​ - 请查看。

A quick look to the documentations shows that the syntax is a bit different:

@Table(name="whatever", uniqueConstraints=@Unique(columnNames={"startDate","endDate", "project_id"))

Hope that helps.

One more answer was at unique constraint check in JPA — check it out.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文