我的表有3列:ID,City,District。
我的网络服务输入一对夫妇(城市,地区)列表。我需要避免夫妻(市,区)重复。
我怎样才能达到这个效果? 我不能使用session.saveOrUpdate(),因为由于ID不同,所有记录似乎总是不同。
请帮帮我。
谢谢。
答案 0 :(得分:3)
评论建议你应该做什么
CONSTRAINT city_district_unique UNIQUE (city, district)
为字段创建UNIQUE约束。当您想要使用Hibernate
创建表时,也可以使用JPA注释完成此操作@Table(name = "yourtable", uuniqueConstraints = {@UniqueConstraint(columnNames = "subject"), ... })
插入时,应该从违反上述约束的方法中捕获异常并正确处理它,例如重新运行带有更改参数的插入或根本不用它。更好的是,检查你的数据是否得到Hibernate以避免事先无效的插入。