zoukankan      html  css  js  c++  java
  • sqlite的Query方法操作和参数详解

    query()方法实际上是把select语句拆分成了若干个组成部分,然后作为方法的输入参数:
    SQLiteDatabase db = databaseHelper.getWritableDatabase();
    Cursor cursor = db.query("person", new String[]{"personid,name,age"}, "name like ?", new String[]{"%传智%"}, null, null, "personid desc", "1,2");

    while (cursor.moveToNext()) {
             int personid = cursor.getInt(0); //获取第一列的值,第一列的索引从0开始
            String name = cursor.getString(1);//获取第二列的值
            int age = cursor.getInt(2);//获取第三列的值
    }
    cursor.close();
    db.close();

    上面代码用于从person表中查找name字段含有“传智”的记录,匹配的记录按personid降序排序,对排序后的结果略过第一条记录,只获取2条记录。
    query(table, columns, selection, selectionArgs, groupBy, having, orderBy, limit)方法各参数的含义:
    table:表名。相当于select语句from关键字后面的部分。如果是多表联合查询,可以用逗号将两个表名分开。
    columns:要查询出来的列名。相当于select语句select关键字后面的部分。
    selection:查询条件子句,相当于select语句where关键字后面的部分,在条件子句允许使用占位符“?”
    selectionArgs:对应于selection语句中占位符的值,值在数组中的位置与占位符在语句中的位置必须一致,否则就会有异常。
    groupBy:相当于select语句group by关键字后面的部分
    having:相当于select语句having关键字后面的部分
    orderBy:相当于select语句order by关键字后面的部分,如:personid desc, age asc;
    limit:指定偏移量和获取的记录数,相当于select语句limit关键字后面的部分。
    本文转自http://zhaole609.iteye.com/blog/1042652

  • 相关阅读:
    C# 之 读取Word时发生 “拒绝访问” 及 “消息筛选器显示应用程序正在使用中” 异常的处理
    sctp和tcp的区别
    kmalloc/kfree,vmalloc/vfree函数用法和区别
    C语言中volatile关键字的作用
    嵌入式开发之NorFlash 和NandFlash
    linux中断--中断嵌套&中断请求丢失
    Linux 套接字编程中的 5 个隐患
    socket编程中write、read和send、recv之间的区别
    HTTP/1.1 Range和Content-Range
    探讨read的返回值的三种情况
  • 原文地址:https://www.cnblogs.com/lovefan/p/3245857.html
Copyright © 2011-2022 走看看