如何构建有效的 HQL 字符串,相当于
UPDATE table SET field = null WHERE ....
最佳答案
您是指批量 HQL 更新吗?试试这个
UPDATE myEntity e SET e.myProperty = null WHERE ...
你也可以使用上面的参数化版本
UPDATE myEntity e SET e.myProperty = :param WHERE ...
在您的代码中:
int updatedEntities = session.createQuery(updateQueryHQL)
.setString( "param", myValue ) // or .setString( "param", null )
.executeUpdate();
参见 documentation了解详情。
如果您不进行批量更新,则应将属性设置为 NULL 并正常保留实体。
关于java - 如何使用 HQL 将 'null' 放入列中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1257736/