请教一个Hibernate + oracle 查询问题

问题描述

如果查询的关键字是数据库的通配符 “_”或者“%”应该如何处理?请各位指点一下,十分感谢

解决方案

SQL Server查询过程中,单引号 ' 是特殊字符,所以在查询的时候要转换成双单引号 '' 。在like操作还有以下特殊字符:下划线_,百分号%,方括号[],尖号^。其用途如下:下划线:用于代替一个任意字符(相当于正则表达式中的 ? )百分号:用于代替任意数目的任意字符(相当于正则表达式中的 * )方括号:用于转义(事实上只有左方括号用于转义,右方括号使用最近优先原则匹配最近的左方括号)尖号:用于排除一些字符进行匹配(这个与正则表达式中的一样)以下是一些匹配的举例,需要说明的是,只有like操作才有这些特殊字符,=操作是没有的。a_b... a[_]b%a%b... a[%]b%a[b... a[[]b%a]b... a]b%a[]b... a[[]]b%a[^]b... a[[][^]]b%a[^^]b... a[[][^][^]]b%在实际进行处理的时候,对于=操作,我们一般只需要如此替换:' -> ''对于like操作,需要进行以下替换(注意顺序也很重要)[ -> [[] (这个必须是第一个替换的!!)% -> [%] (这里%是指希望匹配的字符本身包括的%而不是专门用于匹配的通配符)_ -> [_]^ -> [^]
解决方案二:
http://zhengran-01-sina-com.iteye.com/blog/1040938 参见此文。

时间: 2024-11-03 06:01:11

请教一个Hibernate + oracle 查询问题的相关文章

请教一个hibernate的保存一对多实例的问题。

问题描述 假如我在数据库有class和student两个表,他们是一对多的关系,设置了外键,映射等该设置的都OK了.我现在创了两个student实例S1 S2里面都有数据,然后添加到class的实例C1里面,最后,我调用classDAO的保存C1,提交.最后我打开后台数据库查看,class表里面确实保存信息了,但是student表里面还是空的.我想问下是不是保存C1的时候,还要再写一句话保存S1和S2,这样两个表里面才都有数据.如果是这样的话,为什么我看到的很多书上的例子,都是只保存了C1,然后

小弟请教一个hibernate的问题,网站运行一段时间后就会出现这个错误。

问题描述 type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception java.lang.RuntimeException: tx.rollbacd() throw exception = org.hibernate.TransactionException: JDBC

一个hibernate查询oracle 8i 的问题

问题描述 一个hibernate查询oracle8i的问题:在dao中用sql查询某个日期(包含分.秒),sql如:selectid,record_datefromreftableoracle8i的retable表为:(idvarchar2(30);record_datedate).表数据为:('ref123','2010-02-2010:20:36')现在的问题是:用SqlQuery查询上面的sql后的结果中,record_date值只有年月日,没有分秒,怎样写sql才能查询出record_d

oracle-新手请教一个sql查询问题,在线等,谢谢

问题描述 新手请教一个sql查询问题,在线等,谢谢 一张激活表TL_CSU_ACTIVATE_LOG: 一张用户表TV_CSU_USER 现在要查询2014-12to2015-12每月注册的不同类型(T,B,M,D)用户数,如下图: sql 应该怎么写 解决方案 参考Oracle行列转换 因为你的类型是固定的,所以直接查询,如果你的类型不固定,可以参考上面的链接. SELECT TT.Month ,SUM(CASE WHEN TT.TYPE = 'B' THEN Count ELSE 0 END

c#+oracle如何进行一个时间段的查询

问题描述 c#+oracle如何进行一个时间段的查询,请高手指教请教有什么好的时间控件,能不能发一个,平台VS2005,多谢多谢! 解决方案 解决方案二:用OracleDataSource,有向导把查询参数设为控件的值,比如大于日期控件1,小于日期控件2,就可以了VC2005已经带了时间控件了解决方案三:asp.net本身的控件不能满足要求吗?oracle的时间处理方式和sqlserver不同,需要注意一下.用to_date()取出年月日(需要的话),不过不知道能不能用最简单的方式data1>d

hibernate可不可以根据一个实体类查询出数据库中是否存在该记录

问题描述 hibernate可不可以根据一个实体类查询出数据库中是否存在该记录 需要判断一条记录是否已经在数据库中是否存在重复记录,用hql的话传入的参数会比较多

Oracle查询SQL语句,请教各位大神

问题描述 Oracle查询SQL语句,请教各位大神 有这样一些数据: name subject张三 语文 李四 数学 张三 数学 李四 英语 张三 历史 想得到的结果: name subject张三 语文,数学,历史 李四 数学,英语 请教SQL语句,各路大神帮忙思考下. 解决方案 SELECT name , wmsys.wm_concat (subject) as result FROM 表名 GROUP BY name 解决方案二: 这个主要用SQL语句将subject里的数据拼接成一个字符

迁移 oracle10g rac-您好,请教一个ORACLE跨OS数据迁移问题

问题描述 您好,请教一个ORACLE跨OS数据迁移问题 PLATFORM_ID PLATFORM_NAME ENDIAN_FORMAT 6 AIX-Based Systems (64-bit) Big 18 IBM Power Based Linux Big 2 Solaris[tm] OE (64-bit) Big 4 HP-UX IA (64-bit) Big 16 Apple Mac OS Big 1 Solaris[tm] OE (32-bit) Big 9 IBM zSeries Ba

oracle 连接-请教一个oracle数据库连接的问题

问题描述 请教一个oracle数据库连接的问题 本菜从来没有接触过oracle,最近需要连接oracle数据库,于是从orale官网下载了带有jdk版本的sqldeveloper : Windows 64-bit - zip file includes the JDK 7. 下载后直接运行:sqldeveloper.exe 打开了连接界面,但是连不上数据库. 请问各位大神,我是不是需要作什么配置或者还需要安装其它东西才可以使用sqldeveloper? 解决方案 起码数据库ip端口,用户名,密码