0
У меня есть две модели:Ebean ManyToOne NULLABLE присоединиться
@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')";
Да, я знаю об этом. Мой вопрос заключается в том, как сделать соединение таким, что если строка не существует в gene_data, возвращается только null – by0
Я думаю, что невозможно отключить проверку целостности. Лучше, если вы исправите неправильные строки – MaFo