android rawquery和query的比较

来源:互联网 发布:君子去仁 恶乎成名赏析 编辑:程序博客网 时间:2024/06/06 04:38

上面是两个分别是query和rawQuery的查询语句,主要区别是rawQuery是直接使用SQL语句进行查询的,也就是第一个参数字符串,在字符串内的“?”会被后面的String[]数组逐一对换掉;而query函数是Android自己封装的查询API:它的API文档如下:

public Cursor query (String table, String[] columns, String selection, String[]selectionArgs, String groupBy, String having, String orderBy)Query the given table, returning a Cursor over the result set.tableThe table name to compile the query against.columnsA list of which columns to return. Passing null will return all columns, which isdiscouraged to prevent reading data from storage that isn't going to be used.selectionA filter declaring which rows to return, formatted as an SQL WHERE clause(excluding the WHERE itself). Passing null will return all rows for the given table.selectionArgsYou may include ?s in selection, which will be replaced by the values from selectionArgs, in order that they appear in the selection. The values will be boundas Strings.groupByA filter declaring how to group rows, formatted as an SQL GROUP BY clause(excluding the GROUP BY itself). Passing null will cause the rows to not be grouped.havingA filter declare which row groups to include in the cursor, if row grouping isbeing used, formatted as an SQL HAVING clause (excluding the HAVING itself).Passing null will cause all row groups to be included, and is required when rowgrouping is not being used.orderByHow to order the rows, formatted as an SQL ORDER BY clause (excluding the ORDER BYitself). Passing null will use the default sort order, which may be unordered.Returns?A Cursor object, which is positioned before the first entry. Note that Cursors arenot synchronized, see the documentation for more details.


0 0
原创粉丝点击