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 = 1;
    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 = 0;  

   for (int i = 0; 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[0] + "%" }, null, null,
null);  

        //2.使用这种query方法%号前必须加‘  ;  

//  Cursor  c_test=mDatabase.query(tab_name, new
String[]{tab_field02},tab_field02+"  like ‘%" + str[0] + "%‘", 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语句
时间: 2024-08-26 08:59:57

android query 模糊查询的相关文章

Android通讯录模糊查询搜索(号码,姓名,首字母简拼,全拼),批量选取联系人

Android通讯录模糊查询搜索(号码,姓名,首字母简拼,全拼),批量选取联系人 公司最近的项目中遇到一个需求需要读取通讯录联系人,并需要支持对联系人的模糊查询及批量选取,网上找了好几个例子,模糊查询这块处理的都有点小瑕疵,最终自己在各位网友的辛勤贡献基础之上进行了优化,最终做出了联系人模糊查询. 支持以下功能: 1.按 号码 , 姓名 , 首字母简拼 , 全拼 模糊查询 2.支持[A-Z]快速导航 3.支持联系人按首字母分类 4.支持联系人批量选取. 具体github地址:  https://

Android实现EditText查询数据库内容

我们在app开发的时候需要使用数据库,那么如何使用EditText查询数据库内容呢? 首先我们要先添加一个布局,代码如下 其中添加了一个EditText,和一个ListView实现监听 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="f

SQL Server之 (二) SQL语句 模糊查询 空值处理 聚合函数

(二) SQL语句  模糊查询  空值处理  聚合函数 自己学习笔记,转载请注明出处,谢谢!---酸菜 SQL :结构化查询语言(Structured Query Language),关系数据库管理系统的标准语言. Sybase与Mircosoft对标准SQL做了扩展:T-SQL (Transact-SQL); 注:①SQL对大小写的敏感取决于排序规则,一般不敏感; ②SQL对单引号的转义,用两个单引号来表示一个单引号; ③SQL执行顺序: 1→2→3→4 select  * ---------

NHibernate系列文章二十五:NHibernate查询之Query Over查询(附程序下载)

摘要 这一篇文章介绍在NHibernate 3.2里引入的Query Over查询,Query Over查询跟Criteria查询类似.首先创建IQueryOver对象,然后通过调用该对象的API函数,进行对象查询.这篇文章使用Query Over重写之前所有的查询. 本篇文章的代码可以到NHibernate查询下载 1.创建IQueryOver对象,返回所有Customer信息 1 public IList<Customer> QueryAllOver() 2 { 3 return Sess

WB 小技巧 关键字 模糊查询 关键字变颜色

前台HTML代码: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="

Hibernate使用createSqlQuery进行模糊查询时找不到数据

1. 首先明确一点,使用createSqlQuery如下两种方式的占位符都可以使用,这个在官方的文档可以查到. 注意使用模糊查询时,赋值两边不可以添加单引号. Query query = sess.createSQLQuery("SELECT * FROM CATS WHERE NAME like ?").addEntity(Cat.class); List pusList = query.setString(0, "Pus%").list(); query = s

combobox和combotree模糊查询

First /** * combobox和combotree模糊查询 * combotree 结果显示两级父节点(手动设置数量) * 键盘上下键选择叶子节点 * 键盘回车键设置文本的值 */ (function(){ //combobox可编辑,自定义模糊查询 $.fn.combobox.defaults.editable = true; $.fn.combobox.defaults.filter = function(q, row){ var opts = $(this).combobox('

ajax 判断账户密码 调取数据模糊查询 时钟

一.判断账户密码 <Login.html> 1 <head> 2 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 3 <title></title> 4 <script src="Script/jquery.js"></script> 5 <script languag

mongoid模糊查询

How to use the like query with Mongoid . Basically I wanted something like the familiar SQL query: SELECT * FROM Apps WHERE name LIKE ‘%aaa%’ I couldn’t find anything similar in the Mongoid documentation, but according to the MongoDB documentation yo