2016-10-11 20 views
0

我目前正在開發一個小組管理系統,並使用java 8與eclipselink和SqlLite。Eclipselink - OneToOne Mapping

@Entity 
@Table(name = "T_GROUP") 
public class Group { 

    @Id 
    @GeneratedValue(strategy = GenerationType.AUTO) 
    private long id; 

    private String name; 
    private List<Permission> permissions; 
    private boolean defaultGroup; 
    private String prefix; 
    private String suffix; 
    private int rank; 
    private boolean build; 

    @OneToOne 
    private Group inherit; 

    /** 
    * Instantiates a new Group. 
    */ 
    public Group() { 

    } 

    ...Getters Setters 
} 

該字段繼承對具有其他權限的其他組的引用,但當前組從其他組繼承所有權限。 如何使用字段繼承?它是相同的類型。 的OneToOne關係給了我以下錯誤:

Internal Exception: java.sql.SQLException: [SQLITE_ERROR] SQL error or missing database (near "CONSTRAINT": syntax error)

Error Code: 0

Call: ALTER TABLE T_GROUP ADD CONSTRAINT FK_T_GROUP_INHERIT_ID FOREIGN KEY (INHERIT_ID) REFERENCES T_GROUP (ID)

+0

我改變了數據模型,因爲並不需要其他類 –

+0

我刪除了我的反應,因爲它是不相關的,現在編輯的帖子... – David

+0

什麼樣的「工作」做你想做處理字段'繼承'? – David

回答