Android SQLite案例:实战操作的增删改查详解

0 下载量 167 浏览量 更新于2024-08-31 收藏 62KB PDF 举报
在Android开发中,SQLite数据库是一种轻量级、嵌入式的关系型数据库,它非常适合在移动设备上进行数据存储和管理。本文将深入探讨在Android应用中如何使用SQLite进行数据的增删改查操作,通过实际案例来帮助理解和掌握这一关键技能。 首先,我们来看一个名为`Person`的实体类,这是数据模型的一个简单示例。这个类代表了一个用户对象,包含了三个字段:`id`(整数类型)、`name`(字符串类型)和`phone`(字符串类型)。这个类有三种构造方法,分别用于不同情况下的初始化: 1. 默认构造函数:`public Person()` 2. 只提供姓名和电话号码的构造函数:`public Person(String name, String phone)` 3. 提供所有字段的构造函数:`public Person(Integer id, String name, String phone)` 每个字段都有对应的getter和setter方法,以便在数据库操作时读取和设置数据。例如,`public Integer getId()`用于获取`id`值,`public void setId(Integer id)`用于设置`id`值。 接着,我们看到`DBOpenHelper`类,它是SQLiteOpenHelper的子类,用于创建和管理SQLite数据库。SQLiteOpenHelper是一个抽象类,它定义了两个主要的方法:`onCreate(SQLiteDatabase db)`和`onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)`。这些方法会在数据库初次创建或版本升级时被调用,用于创建表或更新表结构。 `DBOpenHelper`类中,有两个静态变量:`private static final String DB_NAME = "ljq.db"`,这是数据库的名称;`private static final int VERSION = 1`,表示当前数据库版本号。由于SQLiteOpenHelper类需要在应用程序生命周期中保持唯一,因此通常将其声明为静态,并且不使用实例化,而是通过`getWritableDatabase()`或`getReadableDatabase()`方法获取数据库连接。 在Android中进行SQLite操作的具体步骤包括以下四个核心操作: 1. 插入数据(Insert):使用`insert()`或`insertWithOnConflict()`方法向表中插入新的`Person`对象。例如: ```java SQLiteDatabase db = getWritableDatabase(); Person person = new Person("张三", "13812345678"); String sql = "INSERT INTO person (name, phone) VALUES (?, ?)"; db.execSQL(sql, new Object[]{person.getName(), person.getPhone()}); ``` 2. 查询数据(Select):利用`query()`方法根据条件查询数据,例如: ```java Cursor cursor = db.query("person", null, "name=?", new String[]{"张三"}, null, null, null); while (cursor.moveToNext()) { int id = cursor.getInt(cursor.getColumnIndex("id")); String name = cursor.getString(cursor.getColumnIndex("name")); String phone = cursor.getString(cursor.getColumnIndex("phone")); // 处理查询结果 } cursor.close(); ``` 3. 更新数据(Update):使用`update()`方法根据指定的条件更新表中的记录,例如: ```java SQLiteDatabase db = getWritableDatabase(); String sql = "UPDATE person SET phone=? WHERE name=?"; db.execSQL(sql, new Object[]{new Phone("13987654321"), "张三"}); ``` 4. 删除数据(Delete):使用`delete()`方法删除符合条件的记录,例如: ```java SQLiteDatabase db = getWritableDatabase(); int deletedRows = db.delete("person", "name=?", new String[]{"张三"}); ``` 以上就是Android中SQLite数据库的增删改查操作案例分析。在实际项目中,需要根据具体需求合理设计表结构和查询逻辑,同时确保数据的完整性和一致性。同时,别忘了在处理完毕数据库操作后,记得关闭连接以释放系统资源。