使用SQLiteDatabase操作SQLite数据库
发布时间:2020-12-13 00:10:40 所属栏目:百科 来源:网络整理
导读:query() 方法 实际上是把 select 语句拆分成了若干个组成部分,然后作为方法的输入参数: SQLiteDatabase db = databaseHelper.getWritableDatabase(); Cursor cursor = db.query("person",new String[]{"personid,name,age"},"name like ?",new Strin
query()方法
实际上是把
select
语句拆分成了若干个组成部分,然后作为方法的输入参数:
SQLiteDatabase db = databaseHelper.getWritableDatabase();
Cursor cursor = db.query("person",new String[]{"personid,name,age"},"name like ?",new String[]{"%中国
%"},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
关键字后面的部分。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |