Android平台SQLite数据库操作指南

本指南为Android开发者提供简洁实用的SQLite数据库操作指导。

1. 数据库创建与连接

在Android平台上,可以使用SQLiteOpenHelper类来简化数据库的创建和连接操作。

public class MyDatabaseHelper extends SQLiteOpenHelper {

    // 数据库名称和版本号
    private static final String DATABASE_NAME = "mydatabase.db";
    private static final int DATABASE_VERSION = 1;

    // 构造函数
    public MyDatabaseHelper(Context context) {
        super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        // 创建数据库表
        String sql = "CREATE TABLE IF NOT EXISTS mytable (" +
                     "_id INTEGER PRIMARY KEY AUTOINCREMENT," +
                     "name TEXT," +
                     "age INTEGER)";
        db.execSQL(sql);
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        // 数据库升级操作
    }
}

2. 数据增删改查

2.1. 插入数据

// 获取数据库实例
SQLiteDatabase db = myDatabaseHelper.getWritableDatabase();

// 创建ContentValues对象存储数据
ContentValues values = new ContentValues();
values.put("name", "张三");
values.put("age", 20);

// 插入数据
long newRowId = db.insert("mytable", null, values);

2.2. 查询数据

// 查询语句
String selection = "name = ?";
String[] selectionArgs = { "张三" };

// 执行查询
Cursor cursor = db.query(
    "mytable",   // 表名
    null,        // 要查询的列
    selection,   // WHERE条件
    selectionArgs, // WHERE条件参数
    null,        // GROUP BY
    null,        // HAVING
    null         // ORDER BY
);

// 遍历结果集
while (cursor.moveToNext()) {
    int id = cursor.getInt(cursor.getColumnIndexOrThrow("_id"));
    String name = cursor.getString(cursor.getColumnIndexOrThrow("name"));
    int age = cursor.getInt(cursor.getColumnIndexOrThrow("age"));
    // 处理查询结果
}

// 关闭游标
cursor.close();

2.3. 更新数据

// 更新条件
String whereClause = "name = ?";
String[] whereArgs = { "张三" };

// 创建ContentValues对象存储更新数据
ContentValues values = new ContentValues();
values.put("age", 25);

// 执行更新
int count = db.update("mytable", values, whereClause, whereArgs);

2.4. 删除数据

// 删除条件
String whereClause = "name = ?";
String[] whereArgs = { "张三" };

// 执行删除
int count = db.delete("mytable", whereClause, whereArgs);

3. 关闭数据库连接

使用完毕后,记得关闭数据库连接,释放资源。

db.close();

总结

本指南简要介绍了Android平台SQLite数据库的基本操作,希望能够帮助开发者快速上手数据库开发。

zip 文件大小:70.2KB