Hibernate 版本为 3.x
下面是表结构,
firstname | lastname | salary
-----------------------------------
firstname | lastname | 100
firstname | lastname | 500
firstname | lastname | 1000
下面是java代码,
@Entity
@Table(name="TABLE_NAME",schema="SchemaName",
uniqueConstraints={@UniqueConstraint(columnNames={"firstname","lastname"})})
虽然我已经提到了元组“firstname”和“lastname”的唯一约束, 我仍然可以添加具有相同名字和姓氏值的行。
我想,我会得到 HibernateException
或其他情况,并且不允许我添加
多行的名字和姓氏值相同。我没有唯一的约束
在数据库级别创建。它就在代码中。
为什么我可以添加重复行?还是我对唯一约束的理解是错误的?
最佳答案
您读过javadoc吗? ?
这只是在生成的 DDL 中包含唯一约束的提示。它在运行时不会做任何事情。基本上,您需要在数据库级别创建约束。
关于java - 表上的 UniqueConstrait 在 Hibernate 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19223042/