android之sqlite实现增删改查.docx
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
根据提供的文档信息,我们可以深入探讨如何在Android应用中利用SQLite数据库来实现基本的数据增删改查(CRUD:Create, Read, Update, Delete)操作。 ### 标题:Android之SQLite实现增删改查 #### 知识点一:SQLite简介 SQLite是一个轻量级的嵌入式数据库引擎,它被广泛应用于移动设备上,如Android系统中的应用程序。SQLite不依赖于单独的服务进程或系统管理员,而是作为一个库直接集成到应用程序中。这使得SQLite非常适合用于资源受限的环境中。 #### 知识点二:SQLite在Android中的集成 在Android中,SQLite通过`SQLiteOpenHelper`类来进行数据库的创建和版本管理,通过`SQLiteDatabase`类进行具体的数据库操作。这些操作包括插入、查询、更新和删除记录等。 #### 知点三:实现步骤 **1. 创建数据库帮助类 (`DBOpenHelper.java`)** ```java public class DBOpenHelper extends SQLiteOpenHelper { private static final int VERSION = 2; // 数据库版本号 private static final String DBNAME = "user.db"; // 数据库名称 public DBOpenHelper(Context context) { super(context, DBNAME, null, VERSION); } @Override public void onCreate(SQLiteDatabase db) { // 创建用户表 db.execSQL("CREATE TABLE IF NOT EXISTS u_user (_id INTEGER PRIMARY KEY, name VARCHAR(20), age INTEGER, tall VARCHAR(5))"); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // 版本升级时的操作 } } ``` - **`DBOpenHelper`类**继承自`SQLiteOpenHelper`,并重写了`onCreate`方法和`onUpgrade`方法。 - `onCreate`方法中定义了创建数据库表的SQL语句,这里创建了一个名为`u_user`的表,包含四个字段:_id(主键)、name、age和tall。 - `onUpgrade`方法通常用来处理数据库版本升级的情况,但在这个例子中并未实现具体逻辑。 **2. 定义用户操作类 (`UserDAO.java`)** ```java public class UserDAO { private DBOpenHelper helper; public UserDAO(Context context) { helper = new DBOpenHelper(context); } // 添加用户信息 public void add(User user) { SQLiteDatabase db = helper.getWritableDatabase(); String sql = "INSERT INTO u_user (_id, name, age, tall) VALUES (?, ?, ?, ?)"; db.execSQL(sql, new Object[]{user.getId(), user.getName(), user.getAge(), user.getTall()}); db.close(); } // 删除用户信息 public void delete(Integer id) { if (id != null && id.length() > 0) { StringBuffer sb = new StringBuffer(); for (int i = 0; i < id.length(); i++) { sb.append("?"); if (i < id.length() - 1) { sb.append(","); } } SQLiteDatabase database = helper.getWritableDatabase(); String sql = "DELETE FROM u_user WHERE _id IN (" + sb.toString() + ")"; database.execSQL(sql, (Object[]) id); } } // 删除表里的全部数据 public void deleteAll() { SQLiteDatabase database = helper.getWritableDatabase(); String sql = "DELETE FROM u_user"; database.execSQL(sql); } // 用户修改 public void update(User user) { SQLiteDatabase db = helper.getWritableDatabase(); String sql = "UPDATE u_user SET name=?, age=?, tall=? WHERE _id=?"; db.execSQL(sql, new Object[]{user.getName(), user.getAge(), user.getTall(), user.getId()}); } } ``` - **`UserDAO`类**实现了对用户的增删改查操作。 - **添加操作**:通过`add`方法将用户信息插入到`u_user`表中。 - **删除操作**:提供两种方式,一种是通过`delete`方法按ID删除指定用户;另一种是通过`deleteAll`方法清空整个表中的所有记录。 - **更新操作**:通过`update`方法更新用户的信息,例如用户名、年龄或身高。 ### 总结 通过上述分析,我们可以看到在Android中利用SQLite实现数据的增删改查是非常直接且高效的。通过定义合适的数据库帮助类和用户操作类,可以轻松地完成常见的数据库操作。这些操作不仅限于本示例中的简单例子,还可以扩展到更复杂的场景,满足各种应用需求。
- 粉丝: 2
- 资源: 4万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助