java - 无法创建未找到的唯一键约束

标签 java hibernate

我有以下实体:

@Entity
@Table(name = "campaign_content", uniqueConstraints = @UniqueConstraint(columnNames = { "campaignContentId", "campaignId", "fieldTag" }))    
public class CampaignContent implements Serializable {
    private static final long serialVersionUID = 1L;

    @Id
    @Column(name = "campaign_content_id")
    private Integer campaignContentId;

    @Column(name = "field_content")
    private String fieldContent;

    @Column(name = "campaign_id")
    private Integer campaignId;

    @Column(name = "field_tag")
    private String fieldTag;

有 getter 和 setter。

但是我得到:

caused by: org.hibernate.AnnotationException: Unable to create unique key constraint (campaignContentId, campaignId, fieldTag) on table campaign_content: campaignContentId, campaignId, fieldTag not found

怎么了?

最佳答案

列的名称是 campaign_content_id,而不是 campaignContentId。当然,其他列也一样。 columnNames 属性需要一个列名数组。不是 Java 字段或属性名称的数组。

关于java - 无法创建未找到的唯一键约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8041657/

相关文章:

java - 我可以在 Android 上的 javafx 中显示 google adwords (AdView)

java - 无法识别java 8 lambda但配置没问题

java - 顺序错误的二进制代码 - 如何正确移动它?

java - 父类(super class)中的 protected 方法在不同包中的子类中是否可见?

java - 'Ѐ' "new byte[' 中的 Ѐ']"是什么意思?

java - Hibernate 和 H2 内存中的软删除问题

java - 如何将我的动态 JNDI 数据源与 JPA 一起使用?

java - Hibernate从连接表中获取数据

hibernate - JodaTime将DateTime保留为多列

java - 发送经纬度数据到textview