Hibernate对boolean判断方式在不同数据库(Postgres和Sql Server2000)下的表现

转载 2007年10月10日 14:23:00

用Hibernate在一定程度上可以实现跨数据库,但有些时候还是有些问题的,即使没有涉及到数据库的高级特性.最近开发了一项目,开始是在windwos+sql server2000,而服务器环境是Linux + Postgresql.我们知道sql server下判断boolean类型是写=0或1,而postgresql下呢,判断boolean类型是=false或true.但我们是用hibernate3做中间件来完成映射的.那HQL里应该怎样对boolean类型进行判断呢?
我们以从数据库里查询所有未打上删除标记的文章记录为例,第一种写法:

代码
  1. find("from Article as t where t.delFlag = false");   

这种写法在sql server2000下是肯定不能运行的,但postgresql下可以;
再看第2种写法:
代码
  1. find("from Article as t where t.delFlag = 0");  

这种写法在postgresql下肯定不行,但sql server2000下却可以;
第3种写法:
代码
  1. find("from Article as t where t.delFlag = ?",false);   

这种写法在postgresql下和sqlserver2000下都是可以的.

 

我们得出的结论是:不要在Hql里拼接字符串.
同时也期待新版本的Hibernate能有更好的容错能力.

 

SQL Server2000数据库分离与附加

如果您数据库系统安装在系统盘(比如 C 盘),由于 C 盘容易受病毒侵害,您也许希望您的数据存放在非系统盘(比如 D 盘),要做的这点很简单,您并不需要重装数据库,只要把数据“分离”,然后将相关文件移...
  • SYP35
  • SYP35
  • 2016年02月02日 00:18
  • 396

postgres数据库sql语句汇总

下面是Sql Server 和 Access 操作数据库结构的常用Sql,希望对你有所帮助。 新建表: create table [表名] ( [自动编号字段] int IDENTITY ...
  • WhtBk
  • WhtBk
  • 2016年09月13日 16:13
  • 842

数据库连接Java和SQL Server2000

package com.tsinghua; import javax.servlet.http.*; import java.sql.*; import java.io.*; public c...
  • sinat_26992509
  • sinat_26992509
  • 2016年09月12日 09:33
  • 864

java spring mvc 整合hibernate+自定义sql处理操作+数据库连接池

无聊到爆了。 今天整理了自己辛苦一天的学习成果。 spring mvc 整合hibernate+自定义sql处理操作+数据库连接池数据库连接池。 首先你得知道什么是数据库连接池。 数据库连接池...
  • u014559227
  • u014559227
  • 2017年07月10日 15:41
  • 747

java,hibernate和sql server对应的数据类型

java,hibernate和sql server对应的数据类型   Java数据类型 Hibernate数据类型 标准SQL数据类型 (PS:对于不同的...
  • u011554611
  • u011554611
  • 2014年08月30日 14:23
  • 1306

Hibernate支持多数据库

Hibernate操作clob(text)和blob Hibernate要支持多数据库,必须小心处理一下两个问题。 在使用hibernate的过程中,经常要支持多数据库,在MySQL中类型为text...
  • u013467442
  • u013467442
  • 2017年03月20日 16:40
  • 981

数据库和数据表创建及删除

由于数据库的知识尚处于初学阶段,对于一些知识还不是很了解,所以不免会出现错误,在今后的学习中也会进行修改和完善。还有就是自学数据库知识,在学习C#项目的过程中有过简单的介绍和应用,老师也简单的让我们了...
  • erlian1992
  • erlian1992
  • 2015年05月18日 20:04
  • 1125

Hibernate与数据库交互的三种方式及数据解析

Hibernate是较为经典的JavaEE持久层框架,其设计初衷是为了减少sql语句的直接书写。目前,Hibernate有3种查询数据库的方法:HQL Query,Criteria Query,原生的...
  • u011072613
  • u011072613
  • 2016年09月07日 09:58
  • 1576

hibernate访问数据库的几种方式

package com.carInsur.model.dao; import java.util.ArrayList; import java.util.Iterator; import...
  • petercnmei
  • petercnmei
  • 2014年04月29日 15:33
  • 888

JAVA-Hibernate-SQL类型映射表及Hibernate标识生成策略

Hibernate基本类型 JAVA类型 标准SQL字段类型 大小/描述 big_decimal Java.math.BigDecimal NUMERIC 精度数值(8位) binary By...
  • u010725720
  • u010725720
  • 2015年04月28日 22:12
  • 2049
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Hibernate对boolean判断方式在不同数据库(Postgres和Sql Server2000)下的表现
举报原因:
原因补充:

(最多只允许输入30个字)