网上搜了一下ibatis的关于like的使用,相信看到这篇文章的XDJM也应该知道如何解决了 ,我在这里就不重复了,只想补充说明一下:
撇开 '%$xxx$%' 不讲。网上的解决方法如下:
- SELECT *
-
FROM user
-
WHERE username like '%' || #username# || '%'
- SELECT *
- FROM user
- WHERE username like '%' || #username# || '%'
其实上面的语句是正对Oracle 的,对于不同数据字符串连接符不一样。现列举mysql和SQLServer如下:
Mysql:
- SELECT *
-
FROM user
-
WHERE username like CONCAT('%', #username#, '%')
- SELECT *
- FROM user
- WHERE username like CONCAT('%', #username#, '%')
SQLServer:
- SELECT *
-
FROM user
-
WHERE username like '%' + #username# + '%'
- SELECT *
- FROM user
- WHERE username like '%' + #username# + '%'
-----------------------------------------------------------------------------------------------------------------------------
关于数据库字符串连接符简单列举我使用过的一些数据库如下:
Oracle |
SQLServer |
Mysql |
DB2 |
|| 或 CONCAT() |
+ |
CONCAT() |
|| 或 CONCAT() |
更多其他数据库的字符串连接符google!
分享到:
相关推荐
- 在编写SQL时,应避免使用全模糊匹配`LIKE '%text%'`,而应尽可能使用带有前缀或后缀的模糊匹配,如`LIKE 'text%'`,这可以显著提升查询效率。 - 使用`EXISTS`子查询通常比直接关联查询更高效,尤其是在数据量大...
SQLServer Ibatis XML自动生成工具是一款实用的开发辅助软件,主要针对Java开发人员,特别是那些在项目中使用Ibatis作为持久层框架的开发者。这款工具能够显著提高开发效率,通过自动化的方式生成Ibatis所需的XML...
根据提供的文件信息,我们可以从中提炼出与ibatis及其Example特性相关的知识点。以下是对这些知识点的详细阐述: ### 1. **ibatis简介** ...希望本文能对你理解和使用ibatis及其Example特性提供一定的帮助。
Ibatis的动态查询支持更复杂的表达式,比如你可以使用嵌套的判定节点来构造更复杂的逻辑。例如: ```xml ( name=#{name} AND age=#{age} ) ``` 这段代码会在`name`属性非空的情况下添加条件,如果`age`也...
在开始使用iBatis之前,确保你已经安装了Java运行环境,并配置了相应的JDBC驱动,这将使iBatis能够与数据库进行交互。同时,你需要一个XML配置文件来定义SqlMapClient,这是iBatis的主要接口。 #### 构建 iBatis ...
#### 一、iBATIS中的LIKE查询技巧 iBATIS是一款优秀的Java持久层框架,它简化了基于SQL的程序编写,避免了程序员手动处理结果集和手工编写SQL语句。在进行数据库查询时,LIKE查询是一种常见的需求,特别是在搜索...
例如,MySQL使用LIKE谓词,Oracle使用LIKE谓词或REGEXP_LIKE函数,SQL Server使用LIKE谓词或PATINDEX函数。因此,在使用iBATIS进行模糊查询时,需要根据数据库引擎的不同选择合适的查询语句。 3. 优化查询性能:...
标题中提到的“常用ibatis配置”指的是在使用iBatis这一数据持久层框架中,常见的配置用法和技术点。iBatis(现称为MyBatis)是一个流行的Java持久层框架,它通过使用XML或注解的方式,将SQL语句与对象进行映射,...
使用iBatis的动态SQL标签可以带来以下优点: * 提高代码的可重用性:动态SQL片段可以被多次使用,提高代码的可重用性。 * 提高查询效率:动态SQL标签可以根据不同的条件生成不同的SQL语句,从而提高查询效率。 * ...
下面是一个简单的示例,演示如何使用 iBatis 的动态查询条件: ```xml select id, note from Product id = #id# note like '%#note#%' ``` 在上面的示例中,我们使用了 `isNotNull` 和 `...
码2 Ibatis 的核心接口和实现类在使用 Ibatis 之前,我们需要了解其核心的接口和实现类。Ibatis 的核心接口主要包括 SqlSession 和 SqlSessionFactory。SqlSession 接口是执行 SQL 语句的主要接口,提供了 CRUD...
**API ibatis2** iBATIS 是一个Java编程语言中的持久层框架,它允许开发者将SQL语句直接集成到...这份文档详细介绍了iBATIS的各个方面,包括配置、映射文件的编写、事务管理等,是学习和使用iBATIS 2的重要参考资料。
在Ibatis SqlMap 2.3.0中,它为开发者提供了这样的功能,允许在SQL语句中使用通配符来实现这种需求。 1. **通配符的种类**: - `%`:代表任意多个字符,包括零个字符。例如,在`LIKE 'abc%'`中,可以匹配到以"abc...
模糊查询常用于文本搜索,Ibatis支持在SQL语句中使用`LIKE`关键字结合通配符进行模糊匹配。例如,用户输入的部分关键词可以与数据库中的数据进行比较。 ```xml SELECT * FROM users WHERE username LIKE CONCAT('...
特别是在使用类似`LIKE`这样的操作符时,如果用户输入的数据中含有`%`、`_`或`#`等特殊字符,那么这些字符可能会被SQL解释器误认为是通配符或者特殊符号,导致查询结果不符合预期。本文将详细介绍如何在ibatis框架下...
在使用iBATIS(现已被MyBatis取代)进行数据库操作时,我们常常需要传递参数到SQL语句中。在iBATIS中,有两种主要的方式来处理这些参数:使用`$`和`#`。这两种方式在不同的场景下有不同的效果。 首先,让我们来看看...
模糊查询通常涉及SQL的`LIKE`操作,可以在iBatis的映射文件中配置,然后在JSF页面提供搜索框,将输入传递给后台进行模糊匹配。 9. **错误处理和验证**:JSF提供了内置的验证机制,可以对用户输入进行校验,防止无效...
- 对于 Oracle 数据库,使用 `like '%' || #value# || '%'` 的方式可能无法正确执行,因为这种写法适用于 Oracle。 - MySQL 支持另一种写法,即 `name like CONCAT('%', #value:VARCHAR#, '%')`。这里使用了 MySQL...
Ibatis使用SqlSessionFactory来创建SqlSession实例,SqlSession是与数据库交互的主要接口。SqlSessionFactory是一个重量级对象,通常在应用启动时创建一次,然后在整个应用生命周期中重复使用。 ```java ...
标题 "IBatis完成单表基本的数据库操作 模糊查询" 涉及到的是使用iBatis这个轻量级的持久层框架进行数据库的基本操作,特别是模糊查询。iBatis是一个优秀的SQL映射框架,它允许开发者将SQL语句与Java代码分离,提高...