私の要件は、親を削除するときです。子を削除するのではなく、子を削除する代わりに、department_ID
外部キーである子列の1つを何らかの値で更新する必要があります。たとえば、1つの部門(親テーブル)に多くの従業員と従業員(子)が含まれているとします。テーブル)テーブルはDepartment_ID
外部キー列として持っています。問題は、親テーブルを削除したときに直面している問題です。子に何も反映されないupdatable=false
ため、それをtrueにしてから親を削除すると、子列がnullに設定されるか、更新した場合親Department_Id
がnullに設定され、要件に違反している子の列もnullに設定されているため、falseにします。親が変更を加えたときに子を更新したくない場合は、変更のみが削除操作に反映され、1つの列にのみ反映されます。どうすればいいですか?ありがとう
これは私の親テーブルの部門コードです
@Id
@Column(name = "DEPARTMENT_ID")
private String departmentId;
@OneToMany(fetch = FetchType.EAGER)
@JoinColumn(name = "DEPARTMENT_ID",insertable=false,updatable=false)
Collection<Employee> employeeList;
これは私の子供です テーブルの従業員
@Id
@Column(name = "EMPLOYEE_NUMBER")
private int employeeNumber;
@Column(name = "FIRST_NAME")
private String firstName;
@Column(name = "LAST_NAME")
private String lastName;
@Column(name = "DEPARTMENT_ID")
private String departmentId;