Android数据库实例快速上手 (android数据库例子)

Android 应用程序开发在数据存储和管理方面十分重要。为此,Android 提供了一个内置的 SQLite 数据库,它可以轻松地通过使用 Android SDK 或者存储类库实现访问。

在这篇文章中,我们将快速概述如何使用 SQLite 数据库在 Android 应用程序中存储和管理数据。我们会了解到如何创建和打开数据库、创建表、插入、更新和查询数据。

获取数据库帮手

我们需要一个实用的类来操作 SQLite 数据库。Android SDK 中的 SQLiteDatabase 类可以为我们提供这个帮手。这个类具有很多 SQLite 数据库的方法,如创建表、插入行、查询行等。

创建数据库

在使用 SQLite 数据库之前,我们需要创建一个数据库。要创建一个数据库,我们需要创建一个 DBHelper 类,继承自 SQLiteOpenHelper,实现其必要方法(如 onCreate() 和 onUpgrade())。

public class DBHelper extends SQLiteOpenHelper {

// 数据库名称

private static final String DATABASE_NAME = “mydatabase.db”;

// 数据库版本

private static final int DATABASE_VERSION = 1;

// 构造函数

DBHelper(Context context) {

super(context, DATABASE_NAME, null, DATABASE_VERSION);

}

// 创建表

@Override

public void onCreate(SQLiteDatabase db) {

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

}

// 更新表

@Override

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

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

onCreate(db);

}

}

如上所示,我们创建了 DBHelper 类并实现了 onCreate() 和 onUpgrade() 方法。

创建表

创建表是我们在 Android 应用程序中存储数据的一种方式。表是一个具有列和行的结构化数据,包含所需的数据。要创建一个表,我们需要执行一个 SQL 语句。例如,在这里,我们创建了一个表 contacts,并将其包含的列声明为 _id,name 和 phone。

插入数据

一旦我们创建了一个表,我们可以将数据插入到表中。在 Android 中,我们可以使用 SQLiteDatabase 类的 insert() 方法实现这个功能。

public void addContact(Contact contact) {

SQLiteDatabase db = this.getWritableDatabase();

ContentValues values = new ContentValues();

values.put(“name”, contact.getName()); // name

values.put(“phone”, contact.getPhoneNumber()); // phone number

// 插入一行数据

db.insert(“contacts”, null, values);

db.close(); // 关闭数据库连接

}

如上所示,我们创建了一个 addContact() 方法,该方法将指定的 Contact 对象插入到 SQLite 数据库的 contacts 表中。值对象用于指定列名和列对应的数据。

查询数据

在 Android 中,我们可以使用 SQLiteDatabase 类的 query() 方法查询数据。该方法接受的参数包括要查询的表、要查询的列、where 条件以及要排序的列。

public List getAllContacts() {

List contactList = new ArrayList();

// Select All Query

String selectQuery = “SELECT * FROM ” + TABLE_CONTACTS;

SQLiteDatabase db = this.getWritableDatabase();

Cursor cursor = db.rawQuery(selectQuery, null);

// 遍历查询结果并封装成 Contact 对象

if (cursor.moveToFirst()) {

do {

Contact contact = new Contact();

contact.setId(Integer.parseInt(cursor.getString(0)));

contact.setName(cursor.getString(1));

contact.setPhoneNumber(cursor.getString(2));

contactList.add(contact);

} while (cursor.moveToNext());

}

cursor.close();

db.close();

// 返回结果列表

return contactList;

}

如上所示,我们创建了一个 getAllContacts() 方法,该方法返回 SQLite 数据库中 contacts 表的所有行。每行都被封装在一个 Contact 对象中,并重新创建一个 Contact 对象,然后使用该对象向返回的列表添加每个行。我们使用 Cursor 和 SQLiteDatabase 类关闭数据库连接。

在 Android 应用程序中使用 SQLite 数据库存储和管理数据是一项非常有用的任务。这篇文章介绍了如何创建 DBHelper 类、创建表、插入、更新和查询数据。这不仅提高了开发人员的技能水平,还可以帮助我们更好地管理数据并提高应用程序的效率。


数据运维技术 » Android数据库实例快速上手 (android数据库例子)