hql执行update行为时可能遇到的一个问题。
2009-07-31 17:29
323 查看
今天工作中遇到的问题:
执行hql语句“update event set money = money + 100 ”,
老是不能达到效果。
原来是因为数据库中的money为null以致不能进行增加的运算。
如果是在sql语句中可以这么写:
“update event set money = isnull(money,0) + 100”,
即先把为空的money转为0再进行运算。
但是在hql中找不到这个函数,
所以一直没找到很好的解决的办法。
于是我只好在执行这条hql语句之前,
先执行这么一条语句:
“update event set money = 0 where money is null”.
如此,就可以达到所要的效果了。
执行hql语句“update event set money = money + 100 ”,
老是不能达到效果。
原来是因为数据库中的money为null以致不能进行增加的运算。
如果是在sql语句中可以这么写:
“update event set money = isnull(money,0) + 100”,
即先把为空的money转为0再进行运算。
但是在hql中找不到这个函数,
所以一直没找到很好的解决的办法。
于是我只好在执行这条hql语句之前,
先执行这么一条语句:
“update event set money = 0 where money is null”.
如此,就可以达到所要的效果了。
相关文章推荐
- hql执行update行为时可能遇到的一个问题。
- 今天遇到一个问题:在程序中加入的定时触发器,当时出现这样一个问题,触发器定时2秒,程序从后台查询数据经过复杂处理后时间超过了2秒,我查阅好些网络上说有可能触发器等待程序执行完毕后,在触发下一次,也有说
- 单步执行遇到的离奇问题?一个简单的赋值语句都执行失败的bug
- 关于Entity Framework更新的几种方式以及可能遇到的问题(附加类型“Model”的实体失败,因为相同类型的其他实体已具有相同的主键值)在使用 "Attach" 方法或者将实体的状态设置为 "Unchanged" 或 "Modified" 时如果图形中的任何实体具有冲突键值,则可能会发生上述行为
- 同一个页面同时拥有collectionView和navigationBar和tabBar时可能遇到的问题
- (二十三)IDEA 构建一个springboot工程,以及可能遇到的问题
- 一个sio.c的实现及遇到的多任务执行问题
- 一个问题 - 当你写一段代码时,你是否会考虑这份代码可能面临的各种执行环境
- 同一个页面同时拥有collectionView和navigationBar和tabBar时可能遇到的问题
- Oracle PL/SQL 对同一table执行多条insert、update、delete遇到的问题
- 遇到一个很有趣的问题,while(ture)或者for循环出现异常,继续执行还是跳出异常
- maven插件tomcat7:run执行时遇到了一个问题
- 一个你也许不可能遇到的centos 6.3中DNS问题
- 使用CocoaPods遇到一个问题:The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update ....
- 在Hive中执行DDL之类的SQL语句时遇到的一个问题
- 通过SVN导入两个项目(从java移植到andorid)时,一个android,一个普通java项目时可能遇到的两个问题
- 苹果p12文件--一个苹果证书怎么多次使用(蛋疼,这些问题只有和其他企业合作才会遇到,别人的账号不可能给你,蛋疼....)
- 遇到了一个关于for update用索引锁行的问题,悬而未解
- ubuntu下执行sudo apt-get update(ubuntu16.04换源)遇到的问题及解决方法总结
- sql 根据一个表更新 另一个表的例子及可能遇到的问题