如何获取并运行Android数据库实例源码?

Android 数据库实例源码

如何获取并运行Android数据库实例源码?

简介

Android 数据库实例源码是一个用于展示如何在 Android 应用中使用 SQLite 数据库的示例代码,本文将详细介绍如何创建、使用和管理一个本地 SQLite 数据库,包括表的创建、数据的插入、查询、更新和删除等操作。

环境准备

在开始编写代码之前,请确保你已经安装了以下工具:

1、Android Studio

2、Java Development Kit (JDK)

3、Android SDK

创建数据库

如何获取并运行Android数据库实例源码?

我们需要创建一个 SQLite 数据库,在 Android 中,我们可以通过继承SQLiteOpenHelper 类来实现这一点,下面是一个简单的示例:

package com.example.mydatabase;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.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 createTableSQL = "CREATE TABLE users (" +
                "id INTEGER PRIMARY KEY AUTOINCREMENT, " +
                "name TEXT NOT NULL, " +
                "age INTEGER NOT NULL)";
        db.execSQL(createTableSQL);
    }
    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        // 在这里处理数据库升级逻辑,例如删除旧表并重新创建新表
        db.execSQL("DROP TABLE IF EXISTS users");
        onCreate(db);
    }
}

在这个示例中,我们创建了一个名为users 的表,包含三个列:idnameageid 是主键,并且会自动递增。

插入数据

我们需要向数据库中插入一些数据,我们可以使用ContentValues 类来存储要插入的数据:

package com.example.mydatabase;
import android.content.ContentValues;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
public class DataInserter {
    private MyDatabaseHelper dbHelper;
    public DataInserter(Context context) {
        dbHelper = new MyDatabaseHelper(context);
    }
    public void insertUser(String name, int age) {
        SQLiteDatabase db = dbHelper.getWritableDatabase();
        ContentValues values = new ContentValues();
        values.put("name", name);
        values.put("age", age);
        db.insert("users", null, values);
        db.close();
    }
}

在这个示例中,我们创建了一个DataInserter 类,该类包含一个方法insertUser,用于向users 表中插入数据,我们通过调用dbHelper.getWritableDatabase() 获取可写的数据库对象,然后使用ContentValues 类存储要插入的数据,最后使用db.insert 方法将数据插入到表中。

查询数据

我们已经向数据库中插入了一些数据,接下来我们需要查询这些数据,我们可以使用Cursor 类来遍历查询结果:

package com.example.mydatabase;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
public class DataQuery {
    private MyDatabaseHelper dbHelper;
    public DataQuery(Context context) {
        dbHelper = new MyDatabaseHelper(context);
    }
    public Cursor queryUsers() {
        SQLiteDatabase db = dbHelper.getReadableDatabase();
        Cursor cursor = db.query("users", null, null, null, null, null, null);
        return cursor;
    }
}

在这个示例中,我们创建了一个DataQuery 类,该类包含一个方法queryUsers,用于查询users 表中的所有数据,我们通过调用dbHelper.getReadableDatabase() 获取只读的数据库对象,然后使用db.query 方法执行查询操作,查询结果存储在一个Cursor 对象中,我们可以使用Cursor 类的moveToNextmoveToPreviousgetStringgetInt 等方法来遍历和访问查询结果。

如何获取并运行Android数据库实例源码?

更新数据

我们需要更新数据库中的某些数据,假设我们要更新某个用户的姓名,可以使用以下代码:

package com.example.mydatabase;
import android.content.ContentValues;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
public class DataUpdater {
    private MyDatabaseHelper dbHelper;
    public DataUpdater(Context context) {
        dbHelper = new MyDatabaseHelper(context);
    }
    public void updateUserName(int id, String newName) {
        SQLiteDatabase db = dbHelper.getWritableDatabase();
        ContentValues values = new ContentValues();
        values.put("name", newName);
        String selection = "id = ?";
        String[] selectionArgs = { String.valueOf(id) };
        db.update("users", values, selection, selectionArgs);
        db.close();
    }
}

在这个示例中,我们创建了一个DataUpdater 类,该类包含一个方法updateUserName,用于更新指定用户的姓名,我们通过调用dbHelper.getWritableDatabase() 获取可写的数据库对象,然后使用ContentValues 类存储要更新的数据,我们还定义了一个选择条件(即id = ?),以及一个选择参数数组(即{ String.valueOf(id) }),我们使用db.update 方法执行更新操作。

删除数据

同样地,我们也可能需要从数据库中删除某些数据,假设我们要删除某个用户,可以使用以下代码:

package com.example.mydatabase;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
public class DataDeleter {
    private MyDatabaseHelper dbHelper;
    public DataDeleter(Context context) {
        dbHelper = new MyDatabaseHelper(context);
    }
    public void deleteUser(int id) {
        SQLiteDatabase db = dbHelper.getWritableDatabase();
        String selection = "id = ?";
        String[] selectionArgs = { String.valueOf(id) };
        db.delete("users", selection, selectionArgs);
        db.close();
    }
}

在这个示例中,我们创建了一个DataDeleter 类,该类包含一个方法deleteUser,用于删除指定用户,我们通过调用dbHelper.getWritableDatabase() 获取可写的数据库对象,然后定义一个选择条件(即id = ?),以及一个选择参数数组(即{ String.valueOf(id) }),我们使用db.delete 方法执行删除操作。

各位小伙伴们,我刚刚为大家分享了有关“android数据库实例源码”的知识,希望对你们有所帮助。如果您还有其他相关问题需要解决,欢迎随时提出哦!

原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/632266.html

Like (0)
Donate 微信扫一扫 微信扫一扫
K-seo的头像K-seoSEO优化员
Previous 2024-11-07 23:10
Next 2024-11-07 23:16

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

免备案 高防CDN 无视CC/DDOS攻击 限时秒杀,10元即可体验  (专业解决各类攻击)>>点击进入