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 模糊查询的更多相关文章

  1. android sqlite 模糊查询

    正确的做法Cursor cursor = sd.rawQuery("select * from contect where QT_CUSTOM like ?", new Strin ...

  2. android sqlite使用之模糊查询数据库数据的三种方式

    android应用开发中常常需要记录一下数据,而在查询的时候如何实现模糊查询呢?很少有文章来做这样的介绍,所以这里简单的介绍下三种sqlite的模糊查询方式,直接上代码把: package com.e ...

  3. Android简易实战教程--第三十九话《简单的模糊查询》

    今天这一篇小案例模拟模糊查询,即输入一个字符,显示手机对应的所有存在该字符的路径. 布局: <?xml version="1.0" encoding="utf-8& ...

  4. android 按照拼音模糊查询中如何把字符转换成拼音

    http://files.cnblogs.com/liaolandemengxiang/%E6%96%B0%E5%BB%BA%E6%96%87%E4%BB%B6%E5%A4%B9.rar 首先转换成的 ...

  5. IOS-CoreData(增删改查、表关联、分页和模糊查询、多个数据库)

    1>什么是CoreData Core Data是iOS5之后才出现的一个框架,它提供了对象-关系映射(ORM)的功能,即能够将OC对象转化成数据,保存在SQLite数据库文件中,也能够将保存在数 ...

  6. hibernate模糊查询

    hibernate模糊查询-Restrictions.ilike & Expression.like Criteria criteria = session.createCriteria(Ta ...

  7. MySQL模糊查询

    第一种最土的方法:使用like语句第二种用全文索引 有两种方法,第一种最土的方法:使用like语句第二种听涛哥说用全文索引,就在网上搜一下: 如何在MySQL中获得更好的全文搜索结果 mysql针对这 ...

  8. 【EasyUI】combotree和combobox模糊查询

    这里说的模糊查询指在输入框输入,然后自动在下拉框中显示匹配结果,类似Google搜索提示 EasyUI库已经实现了combobox的查询过滤功能,但只能从头匹配,原因是EasyUI库的代码限制: fi ...

  9. Android SQLite 通配符查询找不到参数问题

    使用Android SQLite中SQLiteDatabase类的query方法查询时,如果where中包含通配符,则参数会无法设置,如类似下面的方法查询时 SQLiteDatabase db = d ...

随机推荐

  1. P4027 [NOI2007]货币兑换

    传送门 首先有一个显然的贪心,每次操作都要做到底,为了最优不会出现只卖一部分或者只买一部分的操作 所以设 $f[i]$ 表示前 $i$ 天得到的最大价值,那么对于每一个 $i$,枚举所有 $j< ...

  2. C/C++入门易错点及常用小技巧

    int型:绝对值在10^9范围内的整数都可以定义为int型 long long 型:如果long long型赋值大于2^23-1的初值,需要在初值后面加LL,否则会编译错误. float,double ...

  3. Python——付费/版权歌曲下载

    很多歌曲需要版权或者付费才能收听 正确食用方法: 1.找到歌曲编号 2.输入编号并点击下载歌曲 # coding:utf8 # author:Jery # datetime:2019/4/13 23: ...

  4. PIE SDK影像坏线修复

    1.算法功能简介 坏条带的由来:2003年5月31日,Landsat-7ETM+机载扫描行校正器(SLC) 故障,导致此后获取的影像出现了数据条带丢失,严重影响了Landsat ETM遥感影像的使用. ...

  5. 理解ReentrantLock的公平锁和非公平锁

    学习AQS的时候,了解到AQS依赖于内部的FIFO同步队列来完成同步状态的管理,当前线程获取同步状态失败时,同步器会将当前线程以及等待状态等信息构造成一个Node对象并将其加入到同步队列,同时会阻塞当 ...

  6. linux vi文本编辑器三种模式切换及常用操作

    初学者刚进入vi不要乱点键盘,vi的三种模式和各种命令很容易弄混@@ vi编辑器是Unix系统最初的编辑器.它使用控制台图形模式来模拟文本编辑窗口,允许查看文件中的行.在文件中移动.插入.编辑和替换文 ...

  7. jQuery 学习笔记(TryjQuery)

    第一集.页面加载完成后执行 js 代码: $(document).ready(function(){ $("h1").text("Where to?"); }) ...

  8. c# 短链接生成

    public static string GetShortUrl(string url) { //可以自定义生成MD5加密字符传前的混合KEY string key = DateTime.Now.To ...

  9. HttpUtils 封装类

    作为一个web开发人员,对Http 请求,并不陌生.有时候,我们请求的时候,需要使用代码实现,一般情况,我们使用Apache Jakarta Common 下的子项目.的HttpClient. 可是我 ...

  10. 【Css】Layout布局(二)

    css定位(Positioning) 所谓定位,即允许你定义元素框相对于其正常位置应该出现的位置,或者相对于父元素.另一个元素甚至浏览器窗口本身的位置. css提供了三种基本的定位机制:普通流.浮动和 ...