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关键字后面的部分。
分享到:
相关推荐
SQLiteQuery是SQLite数据库进行查询操作的一个重要工具,它允许我们构建复杂的SQL查询语句来获取、更新或删除数据库中的信息。在这个主题中,我们将深入探讨如何在Android应用中使用SQLiteQuery。 首先,SQLite...
在本案例中,“SQLiteQuery.zip”是一个包含了SQLite相关工具的压缩包,主要用于帮助用户查看和操作SQLite数据库。 SQLite3.exe是SQLite的命令行界面工具,通过这个程序,你可以直接与SQLite数据库进行交互。你可以...
事务操作在数据库操作中至关重要,因为它们确保了数据的一致性。在Qt中,我们可以通过`begin()`开始一个事务,`commit()`提交事务,`rollback()`回滚事务。例如: ```cpp db.transaction(); // 开始事务 // 执行一...
### QT中sqlite多线程操作4个注意问题 在开发基于Qt的应用程序时,经常会遇到需要使用多线程来进行SQLite数据库操作的情况。然而,多线程环境下的数据库操作相较于单线程来说更为复杂,需要特别注意一些细节问题,...
《火山视窗Sqlite本地数据库操作》 SQLite是一款轻量级的、开源的、自包含的、无服务器的、零配置的SQL数据库引擎,广泛应用于移动设备和嵌入式系统中。火山视窗Sqlite本地数据库操作是针对火山视窗平台进行SQLite...
本篇文章将深入探讨如何使用`node-sqlite3`库来操作SQLite3数据库,并对其进行封装,以便于在实际项目中更高效地使用。 首先,`node-sqlite3`是Node.js的一个数据库驱动,它提供了与SQLite3数据库交互的接口。安装...
QT操作SQLite数据库是一个常见的任务,尤其在开发C++应用程序时,SQLite因其轻量级和文件式的特性,成为了理想的本地数据存储解决方案。QT框架提供了一套完整的SQLite支持,使得开发者能够方便地进行数据库的读写...
下面我们将深入探讨如何在Android中进行SQLite本地数据库的操作。 1. **创建SQLite数据库** 在Android中,我们通常通过扩展`SQLiteOpenHelper`类来创建和管理SQLite数据库。`SQLiteOpenHelper`提供了创建、升级和...
未使用的文件页被标记并在以后的添加操作中再次使用。 设置 auto_vacuum 标记可以通过执行以下命令:PRAGMA auto_vacuum = 0 | 1;其中,0 表示不开启 auto_vacuum,1 表示开启 auto_vacuum。当开启 auto_vacuum 时...
本篇文章将深入探讨如何在Android中进行SQLite数据库的操作。 一、SQLite数据库简介 SQLite是一个开源的嵌入式数据库系统,它不需要单独的服务器进程,并且全部数据库都存储在一个文件中。在Android中,每个应用都...
SQLite被集成到Android操作系统中,允许开发者在应用程序中存储和管理数据。本项目是针对初学者设计的一个完整的Eclipse项目,旨在帮助理解SQLite在Android应用中的基本操作。 首先,SQLite在Android中的应用涉及到...
在QT中操作SQLite数据库,首先需要包含必要的头文件,并连接到SQLite数据库。这通常通过`QSqlDatabase`类来完成。例如: ```cpp #include #include QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); db...
SQLite支持事务处理,可以在一组操作中确保数据的一致性。例如: ```java db.beginTransaction(); try { // 执行一系列操作 db.setTransactionSuccessful(); } finally { db.endTransaction(); } ``` 四、游标...
总之,`SQLiteDao`类是C#中对SQLite数据库操作的抽象封装,它使得数据库操作更加简洁、安全且易于维护。通过结合其他辅助类,如扩展方法和加密工具,我们可以构建一个强大而全面的数据库操作框架,满足各种项目需求...
在本文中,我们将深入探讨如何在Qt环境中使用SQLite数据库,并特别关注SQLiteCipher的加密功能,以及如何打开多个数据库和执行跨库查询。SQLiteCipher是一种针对SQLite数据库的加密解决方案,它提供了一种安全的方法...
在Android Studio 1.2版本中,SQLite的操作对于开发者来说是构建应用程序的基础,特别是那些需要存储用户数据或者需要持久化数据的应用。下面将详细介绍如何在Android Studio 1.2中进行SQLite操作。 首先,我们需要...
2. 实现数据库操作方法:在DatabaseHelper类中,我们可以定义一系列的方法,如insert()用于插入数据,query()用于查询数据,update()用于更新数据,delete()用于删除数据。 3. 数据库版本管理:通过...
在本文中,我们将深入探讨如何在Qt环境中使用SQLite数据库进行操作。SQLite是一个轻量级、嵌入式的数据库引擎,常用于桌面应用、移动设备以及Web应用程序。Qt则是一个跨平台的C++图形用户界面应用程序框架,它提供了...
SQLite 中的日期和时间函数是数据库管理中非常重要的一部分,掌握这些函数可以帮助开发者更好地处理日期和时间的转换操作。下面是 SQLite 中五个时间函数的介绍: 1. date() 函数:该函数返回一个以 “YYYY-MM-DD...
Qt与SQLite的结合使得在Qt应用中轻松地管理和操作数据库成为可能。 首先,我们要理解Qt是如何集成SQLite的。Qt通过QSQLITE驱动程序提供对SQLite的支持。在Qt中,可以使用QSqlDatabase类来连接和管理数据库。只需在...