### Android SQLite 使用详解 #### 一、SQLite简介与Android中的应用 SQLite是一种轻量级的数据库,被广泛应用于各种移动设备上,包括Android和iPhone。它支持标准的SQL语法,并且能够有效地处理复杂的查询和事务。对于Android开发者来说,SQLite是进行数据存储的一种常见选择,因为它已经被集成到了Android系统中,提供了丰富的API来方便地操作数据库。 #### 二、基本操作 SQLite在Android中的使用主要包括以下几个方面: - **创建数据库**:通过`openOrCreateDatabase`方法打开或创建数据库。 - **创建表**:使用SQL语句`CREATE TABLE`来定义表结构。 - **插入数据**:可以通过`execSQL`方法执行SQL语句插入数据,也可以使用`ContentValues`对象来插入数据。 - **更新数据**:使用`update`方法更新数据。 - **查询数据**:使用`rawQuery`方法执行SQL查询并返回`Cursor`对象,用于遍历查询结果。 - **删除数据**:使用`delete`方法删除表中的数据。 - **关闭数据库**:通过调用`close`方法来关闭数据库连接。 #### 三、示例代码分析 以下是对示例代码的具体分析: 1. **打开或创建数据库**: ```java SQLiteDatabase db = openOrCreateDatabase("test.db", Context.MODE_PRIVATE, null); ``` 这行代码用于打开或创建名为`test.db`的数据库。如果该数据库不存在,则会自动创建;如果存在,则直接打开。 2. **创建表**: ```java db.execSQL("CREATE TABLE person (_id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR, age SMALLINT)"); ``` 使用`execSQL`方法执行SQL语句创建一个名为`person`的表,包含三个字段:`_id`为主键自增,`name`为字符串类型,`age`为短整型。 3. **插入数据**: - 直接使用`execSQL`方法执行SQL语句插入数据: ```java db.execSQL("INSERT INTO person VALUES (NULL, ?, ?)", new Object[]{person.name, person.age}); ``` - 使用`ContentValues`对象插入数据: ```java ContentValues cv = new ContentValues(); cv.put("name", person.name); cv.put("age", person.age); db.insert("person", null, cv); ``` 4. **更新数据**: ```java cv.put("age", 35); db.update("person", cv, "name=?", new String[]{"john"}); ``` 更新`person`表中`name`为`john`的记录的`age`字段为35。 5. **查询数据**: ```java Cursor c = db.rawQuery("SELECT * FROM person WHERE age >= ?", new String[]{"33"}); while (c.moveToNext()) { int _id = c.getInt(c.getColumnIndex("_id")); String name = c.getString(c.getColumnIndex("name")); int age = c.getInt(c.getColumnIndex("age")); Log.i("db", "_id=>" + _id + ",name=>" + name + ",age=>" + age); } c.close(); ``` 查询`person`表中`age`大于等于33的所有记录,并打印出每条记录的_id、name和age。 6. **删除数据**: ```java db.delete("person", "age < ?", new String[]{"35"}); ``` 删除`person`表中`age`小于35的所有记录。 7. **关闭数据库**: ```java db.close(); ``` 关闭当前打开的数据库连接。 8. **删除数据库**: ```java // deleteDatabase("test.db"); ``` 注释掉的这行代码用于删除名为`test.db`的数据库文件。 #### 四、总结 以上代码演示了在Android中使用SQLite进行数据库操作的基本流程,包括创建数据库、创建表、插入数据、更新数据、查询数据、删除数据以及关闭和删除数据库等步骤。这些操作是开发基于SQLite的应用程序时的基础,掌握这些技能可以帮助开发者更好地管理和操作移动设备上的数据。此外,还需要注意的是,虽然SQLite是一个非常强大的数据库解决方案,但在处理大量数据或高并发访问时,可能需要考虑其他更高效的方案。
剩余15页未读,继续阅读
- 粉丝: 3
- 资源: 16
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (18956428)STM32F103C8T6 小系统原理图 PCB
- (175828796)python全国疫情数据爬虫可视化分析系统(django)源码数据库演示.zip
- 记账本项目市场需求文档(MRD)
- (31687028)PID控制器matlab仿真.zip
- 基于SpringBoot的“在线答疑系统”的设计与实现(源码+数据库+文档+PPT).zip
- (11828838)进销存系统源码
- 记账本项目三大模块原型图
- fed54987-3a28-4a7a-9c89-52d3ac6bc048.vsidx
- (177367038)QT实现教务管理系统.zip
- (178041422)基于springboot网上书城系统.zip