gpt4 book ai didi

java - 在 JPA (eclipselink) 的 UPDATE CASCADE 上创建外键

转载 作者:搜寻专家 更新时间:2023-10-30 20:43:01 24 4
gpt4 key购买 nike

我正在使用 CascadeType.MERGE,但生成的 sql 在外键中不包含任何 ON UPDATE。这是我的代码

@Entity
public class Address {
@Id
private int id;

private String address;
}

@Entity
public class Employee {
@Id
private int empId;

@OneToOne(cascade = CascadeType.MERGE)
private Address address;
}

这里有什么遗漏吗

最佳答案

CascadeType.MERGE 是一个 JPA 构造,它告诉提供者当您在 Employee 上调用 merge 时还要在引用的 Address 上调用 merge。

ON UPDATE CASCADE 是一个数据库设置,似乎与 CascadeType.merge 没有任何关系。如果引用的主键发生变化,它会导致数据库更新外键。由于不允许在 JPA 中更改主键,因此此设置没有意义。如果您有可能需要更改的自然 pk,建议您对唯一标识符使用排序。

关于java - 在 JPA (eclipselink) 的 UPDATE CASCADE 上创建外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11912014/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com