SQLite 在Android中的示例程序

SQLite 在Android中的示例程序

在本文中,我们将介绍在Android中使用SQLite的示例程序。SQLite是一种轻量级的嵌入式数据库引擎,常用于Android应用程序的本地存储和数据管理。

阅读更多:SQLite 教程

SQLite简介

SQLite是一种用于嵌入式系统和移动设备的自给自足的、无服务器的、零配置的、事务性的SQL数据库引擎。它是在世界上最广泛部署的数据库之一,其特点是简单、高效、可靠。SQLite的设计目标是尽可能使数据库引擎变得简单,而且易于在各种平台上移植。

在Android中使用SQLite

Android提供了许多类和接口,使得在应用程序中使用SQLite非常方便。下面是一个简单的示例程序,展示了如何在Android中使用SQLite进行数据存储和检索。

步骤1: 创建数据库和表

首先,我们需要创建一个数据库和表来存储数据。Android提供了SQLiteOpenHelper类来帮助我们管理数据库和表的创建和版本控制。

public class DatabaseHelper extends SQLiteOpenHelper {
    private static final String DATABASE_NAME = "mydatabase.db";
    private static final int DATABASE_VERSION = 1;

    public DatabaseHelper(Context context) {
        super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        String createTableQuery = "CREATE TABLE students (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)";
        db.execSQL(createTableQuery);
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        String dropTableQuery = "DROP TABLE IF EXISTS students";
        db.execSQL(dropTableQuery);
        onCreate(db);
    }
}

步骤2: 插入数据

接下来,我们可以使用SQLite数据库进行数据插入。以下是一个示例程序:

public void insertData(int id, String name, int age) {
    SQLiteDatabase db = getWritableDatabase();

    ContentValues values = new ContentValues();
    values.put("id", id);
    values.put("name", name);
    values.put("age", age);

    long result = db.insert("students", null, values);
    if (result != -1) {
        Log.d(TAG, "Data inserted successfully");
    } else {
        Log.e(TAG, "Failed to insert data");
    }

    db.close();
}

步骤3: 查询数据

我们可以使用SQLite数据库进行数据的查询。以下是一个示例程序:

public List<Student> getAllStudents() {
    List<Student> students = new ArrayList<>();

    SQLiteDatabase db = getReadableDatabase();
    Cursor cursor = db.rawQuery("SELECT * FROM students", null);

    if (cursor.moveToFirst()) {
        do {
            int id = cursor.getInt(cursor.getColumnIndex("id"));
            String name = cursor.getString(cursor.getColumnIndex("name"));
            int age = cursor.getInt(cursor.getColumnIndex("age"));

            Student student = new Student(id, name, age);
            students.add(student);
        } while (cursor.moveToNext());
    }

    cursor.close();
    db.close();

    return students;
}

步骤4: 更新数据

我们可以使用SQLite数据库对数据进行更新。以下是一个示例程序:

public void updateData(int id, String newName, int newAge) {
    SQLiteDatabase db = getWritableDatabase();

    ContentValues values = new ContentValues();
    values.put("name", newName);
    values.put("age", newAge);

    int result = db.update("students", values, "id=?", new String[]{String.valueOf(id)});
    if (result > 0) {
        Log.d(TAG, "Data updated successfully");
    } else {
        Log.e(TAG, "Failed to update data");
    }

    db.close();
}

步骤5: 删除数据

我们可以使用SQLite数据库对数据进行删除。以下是一个示例程序:

public void deleteData(int id) {
    SQLiteDatabase db = getWritableDatabase();

    int result = db.delete("students", "id=?", new String[]{String.valueOf(id)});
    if (result > 0) {
        Log.d(TAG, "Data deleted successfully");
    } else {
        Log.e(TAG, "Failed to delete data");
    }

    db.close();
}

总结

本文介绍了在Android中使用SQLite的示例程序。通过SQLiteOpenHelper类,我们可以方便地创建数据库和表。通过插入、查询、更新和删除操作,我们可以对数据库中的数据进行增删改查。SQLite是Android开发中重要的一部分,是实现本地存储和数据管理的常用工具。希望本文对你在Android开发中使用SQLite有所帮助。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程