1
我有2个实体,即Product和Transaction,这两个实体通过多对多关系链接。我在交易实体中具有以下内容。JPQL ManyToMany @JoinTable选择查询?
@ManyToMany(cascade={CascadeType.ALL})
@JoinTable(name="Transaction_Product")
当我跑我的项目,会出现在我的数据库中创建的3页表的表,他们分别是交易,产品和Transaction_Product。当我运行我的项目时,Transaction_Product自动生成。
我可以通过以下查询从我的交易表中获取物品。
Query q = em.createQuery("SELECT t FROM Transaction t WHERE t.fulfillStatus = 0");
我的问题是,我如何才能从Transaction_Product表中的项目?
我试过类似下面的查询,它没有工作。
Query q = em.createQuery("SELECT bt FROM Transaction_Product bt WHERE bt.ProductID = 1);
请帮忙吗? :)
你不需要从该表中获取数据,你想达到什么目的? –
你好。该Transaction_Product包含交易ID和产品ID作为主键。对于我的项目中的一项要求,我需要确保只有在没有为产品进行交易时才能删除产品。因此,这解释了我想检查Transaction_Product的原因。如果Transaction_Product表中存在基于特定产品ID的行,则用户无法删除该产品。 –