android query 模糊查询
package com.example.utils; import java.util.ArrayList; import android.content.ContentValues;
import
android.content.Context;
import android.database.Cursor;
import
android.database.sqlite.SQLiteDatabase;
import
android.database.sqlite.SQLiteOpenHelper;
import android.util.Log; public class DBManage extends SQLiteOpenHelper { static int
init_version = ;
static String database_name =
"android_sqlite_test.db";
static String tab_name = "uer_log"; static String tab_field01 = "_id";
static String tab_field02 =
"log_name";
SQLiteDatabase mDatabase; public
DBManage(Context context) {
super(context, database_name, null,
init_version);
// TODO Auto-generated constructor stub mDatabase = getWritableDatabase();
} @Override
public void onCreate(SQLiteDatabase db) {
//
TODO Auto-generated method stub
String sql = "create table " +
tab_name + " ( " + tab_field01
+ " integer primary key , "
+ tab_field02 + " text not null) "; db.execSQL(sql); } @Override
public void onUpgrade(SQLiteDatabase db,
int oldVersion, int newVersion) {
// TODO Auto-generated method
stub } /**
* 插入记录
*
*
@param u
* @return
*/
public boolean
insertData(String... str) { int request_int = ; for (int i = ; i < str.length; i++) { //
实例化一个ContentValues 对象 ,作用,收集数据,方便于SQLite执行增,删,改,查
ContentValues
contentValues = new ContentValues(); contentValues.put(tab_field02, str); mDatabase.insert(tab_name, null, contentValues); request_int++;
}
return str.length ==
request_int;
} // 根据条件模糊查询数据库数据
public
ArrayList<String> query(int top_int, String... str) { ArrayList<String> result_list = new ArrayList<String>(); mDatabase = getReadableDatabase();
//模糊查询的三种方式:
/*
*
全部查询
String current_sql_sel = "SELECT * FROM " + tab_name; Cursor c = mDatabase.rawQuery(current_sql_sel, null);*/ //1.使用这种query方法%号前不能加' ;
Cursor c_test =
mDatabase.query(tab_name, new String[]{tab_field02}, tab_field02+" LIKE ?
",
new String[] { "%" + str[] + "%" }, null, null,
null); //2.使用这种query方法%号前必须加' ; // Cursor c_test=mDatabase.query(tab_name, new
String[]{tab_field02},tab_field02+" like '%" + str[] + "%'", null, null, null,
null); //3.使用这种方式必须在%号前加' ;
String
current_sql_sel = "SELECT * FROM "+tab_name +" where "+tab_field02+" like
'%"+str[0]+"%'";
//Cursor c_test =
mDatabase.rawQuery(current_sql_sel, null); Log.e("tag", "查询完成...");
while (c_test.moveToNext()) { String name =
c_test.getString(c_test.getColumnIndex(tab_field02)); //name.contains(str[0]);
// 让集合中的数据不重复;
if
(!result_list.contains(name)) { result_list.add(name);
Log.e("tag", name); }
}
c_test.close(); return
result_list;
} }
Db.rawQuery(sql,selectionArgs);sql ="selcet * from where 字段 like '% "+datestr+" %' "; //sql语句
android query 模糊查询的更多相关文章
- android sqlite 模糊查询
正确的做法Cursor cursor = sd.rawQuery("select * from contect where QT_CUSTOM like ?", new Strin ...
- android sqlite使用之模糊查询数据库数据的三种方式
android应用开发中常常需要记录一下数据,而在查询的时候如何实现模糊查询呢?很少有文章来做这样的介绍,所以这里简单的介绍下三种sqlite的模糊查询方式,直接上代码把: package com.e ...
- Android简易实战教程--第三十九话《简单的模糊查询》
今天这一篇小案例模拟模糊查询,即输入一个字符,显示手机对应的所有存在该字符的路径. 布局: <?xml version="1.0" encoding="utf-8& ...
- android 按照拼音模糊查询中如何把字符转换成拼音
http://files.cnblogs.com/liaolandemengxiang/%E6%96%B0%E5%BB%BA%E6%96%87%E4%BB%B6%E5%A4%B9.rar 首先转换成的 ...
- IOS-CoreData(增删改查、表关联、分页和模糊查询、多个数据库)
1>什么是CoreData Core Data是iOS5之后才出现的一个框架,它提供了对象-关系映射(ORM)的功能,即能够将OC对象转化成数据,保存在SQLite数据库文件中,也能够将保存在数 ...
- hibernate模糊查询
hibernate模糊查询-Restrictions.ilike & Expression.like Criteria criteria = session.createCriteria(Ta ...
- MySQL模糊查询
第一种最土的方法:使用like语句第二种用全文索引 有两种方法,第一种最土的方法:使用like语句第二种听涛哥说用全文索引,就在网上搜一下: 如何在MySQL中获得更好的全文搜索结果 mysql针对这 ...
- 【EasyUI】combotree和combobox模糊查询
这里说的模糊查询指在输入框输入,然后自动在下拉框中显示匹配结果,类似Google搜索提示 EasyUI库已经实现了combobox的查询过滤功能,但只能从头匹配,原因是EasyUI库的代码限制: fi ...
- Android SQLite 通配符查询找不到参数问题
使用Android SQLite中SQLiteDatabase类的query方法查询时,如果where中包含通配符,则参数会无法设置,如类似下面的方法查询时 SQLiteDatabase db = d ...
随机推荐
- vue-cli项目启动遇到的坑
利用 npm init webpack projectname 之后 切换到项目所在文件夹下,执行命令 npm install ,一直非常慢,卡在那里基本不动. 最后是利用cnpm 安装成功的. 转载 ...
- 问题诊断神器arthas
https://github.com/alibaba/arthas 镜像地址 https://gitee.com/arthas/arthas OGNL https://commons.apache.o ...
- MVC 和 MVR 的区别分析
MVC模式中,可以将路由绑定到控制器上.MVR是一对一的.路由和控制器是一个东西. 优点是需要被迫处理路由.缺点是不能在控制器被绑定到路由之前复用控制器. [1] node.js - Differen ...
- css一些常用技巧代码
图片等比例自动缩放 img{ width: auto; height: auto; max-width: 100%; max-height: 100%; } 多行省略 最后line-clamp设 ...
- oracle12c之三 控制PDB中CPU 资源使用
CPU资源隔离 数据库中,不同的PDB对主机CPU资源使用要求不同,那么我们就可以使用CDB resourceplans来管理不同pdb对CPU资源的使用. CDB Resource Plans ...
- JS之作用域与闭包
JS之作用域与闭包 作用域在JS中同样也是一个重要的概念.它不复杂,因为ES5中只有全局作用域和函数作用域,我们都知道他没有块级作用域.但在ES6中多了一个let,他可以保证外层块不受内层块的影响 ...
- pandas中获取数据框的行、列数
获取数据框的行.列数 # 获取行数 df.shape[0] # 获取行数 len(df) # 获取列数 df.shape[1]
- Net操作Excel,不依赖服务器端环境配置(终极方法NPOI)转。
这是起因,为什么会需要用到这个,主要是分析了一下为什么从oledb那个方式换成这个方式.文章见链接 http://www.cnblogs.com/Jerseyblog/p/6410703.html 前 ...
- PHP 字符串 操作符<<< 使用的注意事项
在看<深入PHP和JQeury开发>过程中,遇到字符串 操作符<<<,代码没有问题,但格式却要求特别严格,找到PHP手册上的实例,翻译过来,留作后用. A string ...
- 【Javascript】Javascript原型与继承
一切都是对象! 以下的四种(undefined, number, string, boolean)属于简单的值类型,不是对象.剩下的几种情况——函数.数组.对象.null.new Number(10) ...