隨筆-57  評論-129  文章-0  trackbacks-0
          被一個貌似hsqldb bug的問題折磨了好幾個小時。
          把經過帖出來,大家幫我看看。

          習慣把hql都寫成預定義的形式,同時又為了避免過多的hql定義,我的慣用伎倆:通過如下方式定義hql。

           from Message
            
          where packageKey=:packageKey
             
          and ( null =  :fileKey or fileKey = :fileKey)
             
          and ( null = :objectKey or objectKey= :objectKey)
             
          and ( null = :memberKeys or memberKey in ( :memberKeys)) 


          但是。今天在hqldb上測試時發現,在任何情況下 (null = ?)  都為真!!!
          非常奇怪,害我調試了老半天,后來把數據庫換成了mysql,ok!!

          非常奇怪啊。
          不過,上面的寫法(null =  :fileKey)也有點怪怪的。
          posted on 2007-10-18 22:31 金大為 閱讀(796) 評論(2)  編輯  收藏 所屬分類: Java

          評論:
          # re: 這是hsqldb的bug?還是自己的用法不對。 2007-10-19 08:42 | Tiger F
          是否為null的語法應該用 is null 的吧  回復  更多評論
            
          # re: 這是hsqldb的bug?還是自己的用法不對。 2007-10-19 20:08 | 金大為
          @Tiger F
          謝謝回復
          hibernate 會翻譯過去,這不是問題,就算你寫成is null,情況依然。  回復  更多評論
            
          主站蜘蛛池模板: 铁岭县| 广水市| 舒城县| 通山县| 乾安县| 鹤庆县| 桦川县| 荥经县| 江油市| 四川省| 嘉荫县| 社会| 越西县| 安溪县| 二手房| 广州市| 金秀| 广汉市| 台湾省| 阆中市| 法库县| 社旗县| 泾阳县| 伊金霍洛旗| 正定县| 邹平县| 长顺县| 墨玉县| 泊头市| 牡丹江市| 台江县| 荥经县| 盐边县| 井研县| 桓台县| 灌南县| 平利县| 喜德县| 仪征市| 新晃| 德格县|