gpt4 book ai didi

sql - 命名 Native Query,执行更新语句

转载 作者:行者123 更新时间:2023-11-29 13:04:29 25 4
gpt4 key购买 nike

我们可以使用@NamedNativeQuery 创建更新语句吗,

@Entity
@Table(schema = "public", name = "conversion_checker")
@NamedNativeQueries({
@NamedNativeQuery(name="updateExpireStatus", query="UPDATE conversion_checker SET status='Expired' FROM conversion_checker ")
})
public class ConversionChecker extends BaseEntity {...}

我在这里执行原生查询

/**
* {@inheritDoc}}
*/
@Override
public int executeNativeUpdate(String namedNativeQuery, Map<String, Object> params) {
Query query = getSession().getNamedQuery(namedNativeQuery);
if(params!=null && params.size()>0){
for(Map.Entry<String, Object> param: params.entrySet()){
query.setParameter(param.getKey(), param.getValue());
}
}
return query.executeUpdate();
}

它抛出,

Caused by: org.hibernate.cfg.NotYetImplementedException: Pure native scalar queries are not yet supported,

如何使用@NamedNativeQuery 执行更新语句或者这是不可能的?

最佳答案

尝试添加 @NamedNativeQuery( resultClass = ConversionChecker.class )

关于sql - 命名 Native Query,执行更新语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18059612/

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