我想从表中删除某些记录。这些记录在其他表中有一些子记录。
为了能够删除主记录,我必须先删除子记录。
下面是使用的HQL示例:
代码语言:javascript运行复制delete from ItineraryBooking ib where ib.booking.user.id = :paramId基本上,这应该删除所有ItineraryBookings (在单独的表中的记录),这些连接到Booking表。预订表可以与用户表连接。
奇怪的是,当您将上面的代码更改为:
代码语言:javascript运行复制from ItineraryBooking ib where ib.booking.user.id = :paramId并执行一个Query.list(),它将工作得很好。
每当我想执行delete变量时,Hibernate似乎都会生成一个奇怪的delete语句。我的HQL有问题吗?或者这是一种冬眠的怪癖?