Ebean ManyToOne可以为空加入

时间:2013-05-02 19:29:33

标签: java sql jpa playframework-2.0 ebean

我有两种模式:

@Entity 
@Table(name="table_entry")
public class TableEntry extends Model {

        @ManyToOne(fetch=FetchType.LAZY)
        @JoinColumn(name="clone_id", referencedColumnName="clone_id")
        public GeneData gene_data;

        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        public Long id;

        @Constraints.Required
        public String strain;
        public String clone_id;
        public String exp_type;
        ...

@Entity 
@Table(name="gene_data")
public class GeneData extends Model {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    public Long id;

    @ManyToOne 
    public List<TableEntry> entry;

    public String clone_id;
        public String gene_name;
        public String wb_id;
        ...

我想加入table_entry clone_id。但是,并非table_entry中的每一行都在gene_data中有一行。所以我希望gene_data在联接期间找不到时为空。这可能吗?

我做错了什么?我一直收到这个错误

We got the following error: 
Referential integrity constraint violation: 
"FK_TABLE_ENTRY_GENE_DATA_1: 
PUBLIC.TABLE_ENTRY FOREIGN KEY(CLONE_ID) REFERENCES 
PUBLIC.GENE_DATA(CLONE_ID) ('Y56A3A.19')";

1 个答案:

答案 0 :(得分:1)

我认为table_entry中有一行,其中clone_id设置为&#39; Y56A3A.19&#39;但是这个值在gene_data中没有一行。