oracle 模糊查询 (处理jsp页面传过来的条件)

oracle数据模糊查询的语句:

SELECT m.MUSICID,m.MUSICNAME,m.MUSICPICTURE,m.MUSICLYRICS,m.MUSICINSTRUCTION FROM MUSIC m where m.musicname like '%见%';

本来 我是打算通过 实体类(entity),数据访问层(dao),业务逻辑层(biz)封装后 在Action中调用模糊查询的方法  来实现 根据我输入的 关键字 来进行模糊查询。

试了好多SQL都没有用  提示 为 “非正确语句”

例如:

sql="SELECT m.MUSICID,m.MUSICNAME,m.MUSICPICTURE,m.MUSICLYRICS,m.MUSICINSTRUCTION FROM MUSIC m where m.musicname like '%"+"?%'";<strong><span style="color:#ff0000;">//错误语句</span></strong>
问号 和 引号 换来换去还是不能成为正确的SQL语句。

最后我只能在 Struts2中的 Action方法中直接对sql进行处理

String searchName=req.getParameter("searchName");//jsp页面传过来的 搜索关键字

String sql="SELECT m.MUSICID,m.MUSICNAME,m.MUSICPICTURE,m.MUSICLYRICS,m.MUSICINSTRUCTION FROM MUSIC m where  m.musicname like<span style="color:#ff0000;"> '%"+searchName+"%'"</span>;//模糊查询的sql语句                                                                                                                                                                     DBUtil util = new DBUtil();
<span style="white-space:pre">		</span>ResultSet rs =util.Query(sql);                                                                                                                                 ........<span style="color:#6600cc;">接下来就是对sql语句进行处理</span>

通过上面的方法 最终才实现模糊查询

jsp页面代码:

<s:form action="music_fuzzyQueryMusicInfo.action" method="post">
		<input type="text" name="searchName" id="searchName" placeholder="歌名"  />
		<input type="submit" value="Search"  />
</s:form>
时间: 2024-10-06 06:04:21

oracle 模糊查询 (处理jsp页面传过来的条件)的相关文章

Oracle 模糊查询方法

在这个信息量剧增的时代,如何帮助用户从海量数据中检索到想要的数据,模糊查询是必不可少的.那么在Oracle中模糊查询是如何实现的呢? 一.我们可以在where子句中使用like关键字来达到Oracle模糊查询的效果:在Where子句中,可以对datetime.char.varchar字段类型的列用Like关键字配合通配符来实现模糊查询,以下是可使用的通配符: (1)% :零或者多个字符,使用%有三种情况 字段 like '%关键字%'字段包含"关键字"的记录 字段 like '关键字%

JSP页面传参

1.利用javabean Javabean类: package entity; public class User { private String username=""; private String gender=""; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } p

Oracle 模糊查询 优化

模糊查询是数据库查询中经常用到的,一般常用的格式如下: (1)字段  like '%关键字%'   字段包含"关键字“的记录   即使在目标字段建立索引也不会走索引,速度最慢 (2)字段  like '关键字%'      字段以"关键字"开始的记录   可以使用到在目标字段建立的升序索引 (3)字段 like '%关键字'      字段以"关键字“结束的记录    可以使用到目标字段建立的降序索引 对于无法使用索引的 '%关键字%' 模式,有没有办法优化呢,答案

Oracle模糊查询CONCAT参数个数无效

在使用MyBatis操作Oracle数据库的时候,写模糊查询突然发现原本在MySql中正确的代码,在Oracle中报错,参数个数无效 <if test="empId!=null and empId!=''"> and e.empId like CONCAT('%',#{empId},'%') </if> 异常信息: 经过查阅数个资料后得知Oracle的CONCAT函数不像MySql那样支持三个参数的拼接,需要把SQL语句修正为: and e.empId like

oracle模糊查询简述

--like模糊查询,通配符:'%'表示代替一个或多个字符,'_'表示代替一个字符select * from v_test where v_name like '_BCE%'; 转义字符:可以把通配符('%','_')转义为字符,而非其原意 select * from v_test where v_name like '\_BCE%' escape '\';--也可以把其他字符声明为转义字符select * from tt where v_name like 'S_BCE%' escape 'S

利用JSTL重写查询的jsp页面

利用JSTL重写Java Web MVC实例中的jsp页面 第一步:导入jstl.jar和standard.jar文件 第二步:重写jsp页面 1 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> 2 <%@ page import="java.util.*, com.test.bean.EmpB

oracle 模糊查询中的转义字符用法

drop view aaa; create view aaa as select '_BCDE' A FROM DUAL UNION ALL SELECT 'ABCDE' FROM DUAL UNION ALL SELECT 'ACBDE' FROM DUAL; SELECT A FROM AAA WHERE A LIKE '_BCD%'; select a from aaa where a like '\_BCD%' ESCAPE '\'; ESCAPE 后面的字符表示是一个检索字符, 字符串

Mybatis,模糊查询语句,以及传参数的正确写法

不多说直接上代码! 接口: public interface CommodityMapper { int deleteByPrimaryKey(Integer productId); int insert(Commodity record); Commodity selectByPrimaryKey(Integer productId); List<Commodity> selectAll(); List<Commodity> getType(int id); int update

oracle 模糊查询忽略大小写

select * from c_table t where upper(t.name) like '%F%';--将字段全转成大写 select * from c_table t where lower(t.name) like '%f%';--将字段全转成小写 select * from c_table t where t.name like upper('%f%') or t.name like lower('%F%');