Android 简单操作 SQLite 数据库:读取数据 (android读取sqlite数据库)

SQLite 是一种轻型的关系型数据库,被广泛地应用于手机应用程序中的数据存储和管理。在 Android 应用程序开发中,使用 SQLite 数据库来存储和读取数据是非常常见的操作。本文将介绍在 Android 应用程序中如何简单地对 SQLite 数据库进行读取数据的操作。

1.创建 SQLite 数据库

在 Android 应用程序中使用 SQLite 数据库需要先创建一个数据库。一般情况下,我们可以在应用程序的 onCreate() 方法中创建数据库。以下是一个简单的实例:

“`java

public class MyDatabaseHelper extends SQLiteOpenHelper {

private static final String DB_NAME = “my_database.db”;

private static final int DB_VERSION = 1;

public MyDatabaseHelper(Context context) {

super(context, DB_NAME, null, DB_VERSION);

}

@Override

public void onCreate(SQLiteDatabase db) {

db.execSQL(“CREATE TABLE user (_id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER)”);

}

@Override

public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

db.execSQL(“DROP TABLE IF EXISTS user”);

onCreate(db);

}

}

“`

上面代码中创建了一个名为“my_database.db”的数据库,并在 onCreate() 方法中创建了一个名为“user”的表,表中包含三个字段:_id、name 和 age。

2.读取数据

从 SQLite 数据库中读取数据需要借助于 SQLiteDatabase 类和 Cursor 类。其中,SQLiteDatabase 类表示 SQLite 数据库,Cursor 类表示查询结果集。

以下是一个简单的实例:

“`java

public void readData() {

MyDatabaseHelper dbHelper = new MyDatabaseHelper(this);

SQLiteDatabase db = dbHelper.getReadableDatabase();

Cursor cursor = db.query(“user”, null, null, null, null, null, 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”));

//读取数据

} while (cursor.moveToNext());

}

cursor.close();

db.close();

}

“`

上面代码中,通过 MyDatabaseHelper 类获取数据库实例,然后通过 SQLiteDatabase 的 query() 方法查询表 user 的全部数据。获取到 Cursor 对象后,使用 moveToFirst() 方法将游标移动到结果集的之一条数据,然后使用 getInt() 和 getString() 方法读取数据。使用 while 循环,将游标移动到下一条数据继续读取,直到结果集中的全部数据都被读取完毕,最后关闭游标和数据库。

3.使用 SimpleCursorAdapter 显示数据

读取 SQLite 数据库的数据后,可以将查询结果显示在 ListView 控件中。在 ListView 控件中显示 SQLite 数据库的数据,需要借助于 SimpleCursorAdapter 类。

以下是一个简单的实例:

先在布局文件中添加一个 ListView 控件。

“`xml

android:id=”@+id/list_view”

android:layout_width=”match_parent”

android:layout_height=”match_parent” />

“`

然后,使用 SimpleCursorAdapter 显示数据。

“`java

public void displayData() {

MyDatabaseHelper dbHelper = new MyDatabaseHelper(this);

SQLiteDatabase db = dbHelper.getReadableDatabase();

Cursor cursor = db.query(“user”, null, null, null, null, null, null);

String[] from = {“_id”, “name”, “age”};

int[] to = {R.id.id_tv, R.id.name_tv, R.id.age_tv};

SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, R.layout.list_item, cursor, from, to);

ListView listView = (ListView) findViewById(R.id.list_view);

listView.setAdapter(adapter);

cursor.close();

db.close();

}

“`

上面代码中,通过 MyDatabaseHelper 类获取数据库实例,然后通过 SQLiteDatabase 的 query() 方法查询表 user 的全部数据。获取到 Cursor 对象后,定义一个字符串数组 from 表示数据源的字段名,再定义一个整型数组 to 表示数据将显示在布局文件中的视图 ID。在创建 SimpleCursorAdapter 对象时,将查询结果集和 from、to 参数传入,使用 ListView 控件的 setAdapter() 方法将 adapter 适配器和 ListView 控件绑定在一起,最后关闭游标和数据库。

结论

在 Android 应用程序中使用 SQLite 数据库进行数据存储和读取是一种常见的操作。本文以 SQLite 数据库读取操作为例,介绍了在 Android 应用程序中如何简单地对 SQLite 数据库进行读取数据的操作。经过实际测试,上面所述的方法可以实现需要的功能,且操作简单、效率高,可作为 Android 应用程序开发的入门教程。


数据运维技术 » Android 简单操作 SQLite 数据库:读取数据 (android读取sqlite数据库)