gpt4 book ai didi

java - Hibernate,无法执行具有 JOINS 的 native SQL 更新查询

转载 作者:行者123 更新时间:2023-11-29 20:48:28 27 4
gpt4 key购买 nike

public void do_UPDATE(Set<Long> customerIdSet) {

final String query =
"UPDATE product_orders po " +
"INNER join customer c " +
"ON po.order_id = c.order_id " +
"SET po.updated_on = now() " +
"WHERE c.customer_id IN (:customerIdSet)";

List<Long> ids = new ArrayList<Long>(customerIdSet.size());

for(final Long id : customerIdSet) {
ids.add(id);
}

_sessionFactory
.getCurrentSession()
.createSQLQuery(query)
.setParameterList("customerIdSet", ids)
.executeUpdate();

}

我收到 SQLGrammarException。这个查询实际上在真正的 MySQL 控制台中运行,但为什么 Hibernate 不认为它是正确的语法?

最佳答案

我的平台不会执行包含 INNER JOIN 的语句,因此解决方案是使用子查询。

关于java - Hibernate,无法执行具有 JOINS 的 native SQL 更新查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38249417/

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