2015-10-15 45 views
1

我正在爲我的項目使用MySQL的datanucleus。當我嘗試堅持一個對象時,我收到異常Data Nucleus-MySql不正確的表定義;只能有一個自動列,它必須被定義爲一個關鍵錯誤

不正確的表定義;只能有一個自動柱,它 必須定義爲一個關鍵的錯誤

我的目標設計如下

Plan.class

public class Plan implements Serializable { 


private static final long serialVersionUID = 6653821147113556490L; 

@PrimaryKey 
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) 
@Column(name = "ID") 
private Long id; 

@Persistent(column = "NAME") 
private String planName; 

@Persistent(defaultFetchGroup = "true") 
@Element(column = "FEATURES") 
@Unowned 
private Set<PlanFeature> planFeatures; 

@Persistent(column = "CURRENCY_TYPE") 
private String currency = "USD"; 

@Persistent(defaultFetchGroup = "true") 
@Element(column = "CURRENCIES") 
@Unowned 
private Set<Currency> currencies; 

@Persistent(column = "COST") 
private BigDecimal cost = new BigDecimal(0); 

@Persistent(column = "COST_INR") 
private BigDecimal costINR = new BigDecimal(0); 

@Persistent(column = "DISCOUNT") 
private BigDecimal discount = new BigDecimal(0); 

@Persistent(column = "TEST_TAKERS_ALLOWED") 
private Integer testTakersAllowed; 

// How many clients have opted for this plan 
@Persistent(column = "OPTED_OWNERS") 
private Long planOwners = 0L; 

@Persistent(column = "PLAN_LEVEL") 
private Integer level; 
    ......//Getters and setters 
} 

PlanFeature.class

public class PlanFeature { 

    @Persistent(column = "NAME") 
    private String name; 

    @Persistent(column = "VALUE") 
    private String value; 
    //Getters and setters  
} 

貨幣類別

public class Currency implements Serializable { 

    private static final long serialVersionUID = 8814737520234672816L; 

    @Persistent(column = "ID", valueStrategy = IdGeneratorStrategy.IDENTITY) 
    private Long id; 

    @Persistent(column = "COUNTRY") 
    private String country; 

    @Persistent(column = "CURRENCY") 
    private String currency; 
//Getters and setters 
} 

我沒有在任何類中使用多個ID。請幫幫我。

+0

如果你要引用一些異常消息,然後發佈異常和堆棧跟蹤,然後人們可以看到異常來自哪裏......也許你的數據庫? –

回答

0

貨幣中的id正在產生問題。我添加@primarykey註釋並開始工作。謝謝大家的回覆..

相關問題