当前位置: 首页 > 知识库问答 >
问题:

Spring数据的JPA删除方法使用两个字段中的embaddable键

郤令
2023-03-14

这是主实体类,它有一个embeddedId

public class LabResHivMutation implements Serializable {
    private static final long serialVersionUID = 1L;

    @EmbeddedId
    private LabResHivMutationPK id;

    private String comments;

    @Column(name="MUTATION_TYPE_ID")
    private BigDecimal mutationTypeId;

    @Column(name="VALUE")
    private String value;   

}

这是可嵌入的密钥

@Embeddable
public class LabResHivMutationPK implements Serializable {
    //default serial version id, required for serializable classes.
    private static final long serialVersionUID = 1L;

    @Column(name="TO_INST")
    private Long toInst;

    @Column(name="REL_INVSTID")
    private long relInvstid;

    @Column(name="MUTATION_ID")
    private long mutationId;

}

我仍然可以编写一个JPQL查询来删除它。我的问题是有什么方法可以做到这一点。

比如deleteById?

共有1个答案

澹台正真
2023-03-14

是的,repo.deletebyIdToInstandIdrelinvstid(toInst,relInnvstid)正如您所看到的,您必须指定deletebyIDtoInst,这就是您引用嵌入式ID字段的方式,与引用外部关系字段的方式相同。此处ID与您的字段命名匹配

@EmbeddedId
private LabResHivMutationPK id;
 类似资料:
  • 本文向大家介绍MySQL删除数据库的两种方法,包括了MySQL删除数据库的两种方法的使用技巧和注意事项,需要的朋友参考一下 本文为大家分享了两种MySQL删除数据库的方法,供大家参考,具体内容如下 第一种方法:使用 mysqladmin 删除数据库 使用普通用户登陆mysql服务器,你可能需要特定的权限来创建或者删除 MySQL 数据库。 所以我们这边使用root用户登录,root用户拥有最高权限

  • 我有以下错误。在1数组中使用splice时,它会删除两个数组中的元素。代码: 控制台日志的结果是:[1,3,4,5],我只在arrayAux上使用了拼接方法。我不知道为什么会这样。 谢谢你的帮助!

  • 问题内容: 这是我的学校项目。我很喜欢eForum的部分。我试图删除一个用户,被删除的用户的所有主题和回复也将被删除。 此方法检索表的第一列的值并将其存储为userID。然后,它将执行delete sql语句以删除某些用户。 对于此方法,它将采用另一个表的第一列的值(该表显示所有线程)并执行delete sql语句。 但是,删除一些用户后,被删除用户的线程和回复仍存储在数据库中。我目前在数据库中使

  • 有两个实体具有关系@ManyToOne和@OneTomany(类别和产品)。当我启用(cascade=cascadeType.all)时,Products中的一条记录会删除一个类别,这是不好的。该实体的结果是只有删除发生在一个地方(表)而没有级联(相关)删除为另一个引用必须做什么???我使用的是spring 5.1.5(不是spring boot)谢谢! spring 5/TOMCAT 9/jac

  • 问题内容: 我正在将Hibernate hbm.xml文件中的某些类迁移到JPA批注。 我们有一个在多个地方使用的可嵌入类。每个位置使用地址中属性的不同子集。 (为简便起见,省略了getter / setter) 请注意,在这个人为的示例中,shippingAddress使用Address.country,但billingAddress不使用;他们都不使用Address.email。 问题在于,H

  • 我需要帮助设置一个应用程序,该应用程序将内部(主)MS SQL数据库DB1中的数据子集复制到另一个MySQL数据库DB2中,该数据库在Web服务器上运行,供Web应用程序使用(即,我想同步这两个数据库)。这两个数据库上的表具有相同的名称,尽管DB2上只定义了属性/列的子集。我想使用(xml配置的)spring、spring data jpa(即JpaRepository接口)和hibernate作