1.SQLiteOpenHelper
SQliteOpenHelper是一个抽象类,来管理数据库的创建和版本的管理。要使用它必须实现它的nCreate(SQLiteDatabase),onUpgrade(SQLiteDatabase, int, int)方法
onCreate:当数据库第一次被建立的时候被执行,例如创建表,初始化数据等。
onUpgrade:当数据库需要被更新的时候执行,例如删除久表,创建新表。
2.SQLite的使用
Android提供了一个名为SQLiteDatabase的类,它封装了一些操作数据库的API。使用它能实现基本的CRUD操作,通过getWritableDatabase()和getReadableDatabase()可以获取数据库实例。
SQLiteOpenHelper 是包装了数据库的创建、打开和更新的抽象类。通过实现和使用 SQLiteOpenHelper ,你可以隐去在数据库打开之前需要判断数据库是否需要创建或更新 的逻辑。
上面的代码片段显示了如何扩展 SQLiteOpenHelper 类,通过重写构造函数、 onCreate 和 onUpgrade 方法来处理新的数据库的创建和更新到新的版本。
在前一个例子中, onUpgrade 只是简单的丢弃了已有的表并用新定义的表进行替换。实际上,一个 比较好的方案是移植已经存在的数据到新的表中。
为了使用辅助类的实现,创建一个实例,传入上下文,数据库的名,当前版本和一个 CursorFactory (如果你正在使用的话)。
通过调用 getReadableDatabase 或 getWriteableDatabase 来打开并返回一个可读 / 可写的数据库实例。
调用 getWriteableDatabase 可能因为磁盘空间或权限问题失败,所以,一个好的习惯是在捕获异常后提供 getReadableDatabase 方法的结果,如下面的代码所示:
dbHelper = new myDbHelper(context, DATABASE_NAME, null, DATABASE_VERSION);
SQLiteDatabase db;
try
{
db = dbHelper.getWritableDatabase();
}
catch (SQLiteException ex)
{
db = dbHelper.getReadableDatabase();
}
在后台,如果数据库不存在,辅助类会执行它的 onCreate 方法。如果数据库的版本发生了变化, onUpgrade 方法会触发。在两种情况下, get<Read/Write>ableDatabase 的调用会相应的返回已经存在的、新创建的或者更新了的数据库。
分享到:
相关推荐
本篇文章将深入探讨如何在Android中使用SQLiteOpenHelper进行数据库的简单应用。 首先,SQLiteOpenHelper有两个关键方法:`onCreate()` 和 `onUpgrade()`。`onCreate()` 方法在数据库首次创建时被调用,用于执行...
在Android应用中,`SqliteOpenHelper`是管理SQLite数据库生命周期的主要工具,包括创建、升级和查询数据库。 首先,我们来详细了解一下`SqliteOpenHelper`类的主要功能: 1. **构造函数**:创建`SqliteOpenHelper`...
通过学习和理解这个例子,你应该能够熟练地在Android应用中使用SQLiteOpenHelper进行数据库操作。确保正确处理数据库的版本管理,以适应应用程序的迭代更新,同时也要注意线程安全问题,尤其是在多线程环境中操作...
6.5.3 SQLiteOpenHelper应用 6.6 数据共享(ContentProviders) 6.7 小结 第7 章多媒体开发 7.1 多媒体开发详解 7.1.1 Open Core 7.1.2 MediaPlayer 7.1.3 MediaRecorder 7.2 播放音乐 7.3 播放...
6.5.3 SQLiteOpenHelper应用 6.6 数据共享(ContentProviders) 6.7 小结 第7 章多媒体开发 7.1 多媒体开发详解 7.1.1 Open Core 7.1.2 MediaPlayer 7.1.3 MediaRecorder 7.2 播放音乐 7.3 播放...
然而,SQLiteOpenHelper主要用于应用内部的数据管理,如果需要与其他应用共享数据,就需要引入ContentProvider。 ContentProvider是Android四大组件之一,它提供了一种标准的方式来存储和检索数据,并且使得不同...
`SQLiteOpenHelper`是Android SDK提供的一个辅助类,用于帮助开发者创建和管理应用程序中的SQLite数据库。它通过继承自`SQLiteOpenHelper`类并重写其中的方法,可以实现数据库的创建、升级等功能。 ### `...
在这一067集的视频教程中,你将深入理解SQLiteOpenHelper的工作原理及其在实际项目中的应用。 首先,SQLiteOpenHelper类的构造函数通常会在你的应用中自定义的子类中被重写,这个子类是你与SQLite数据库交互的主要...
本文将深入探讨SQLiteOpenHelper的使用方法及其在实际应用中的关键知识点。 首先,SQLiteOpenHelper的主要职责是创建和升级数据库。当我们首次运行应用程序时,如果数据库不存在,SQLiteOpenHelper的`onCreate()`...
在实际项目中,为了实现数据的共享和跨应用访问,通常会结合`ContentProvider`来使用`SQLiteOpenHelper`。`ContentProvider`是Android系统提供的一个接口,它可以使得其他应用能够安全地访问数据。你需要在`...
在本文中,我们将深入探讨SQLiteOpenHelper的使用,包括它的核心方法、数据库生命周期管理以及如何在实际项目中应用。 SQLiteOpenHelper的主要职责是帮助我们创建和更新数据库。它包含以下关键方法: 1. **构造...
6.5.3 SQLiteOpenHelper应用 6.6 数据共享(ContentProviders) 6.7 小结 第7 章多媒体开发 7.1 多媒体开发详解 7.1.1 Open Core 7.1.2 MediaPlayer 7.1.3 MediaRecorder 7.2 播放音乐 7.3 播放视频 7.4 录制歌曲 7.5...
总结起来,这个基于SQLiteOpenHelper封装的SQLite操作jar包是一个针对Android开发者的实用工具,它简化了数据库操作,提供了便捷的API,使得开发者能更专注于应用程序的核心功能,而非数据库管理。通过阅读并遵循内...
在Android应用开发中,SQLite是一个轻量级的关系型数据库,常用于存储应用的本地数据。SQLiteOpenHelper是Android SDK提供的一种工具类,它帮助开发者轻松管理SQLite数据库,包括创建、升级和打开数据库。在这个示例...
总的来说,这个压缩包提供了一个基础的Android SQLite数据库操作教程,通过学习和实践,开发者可以了解如何在Android应用中有效地管理SQLite数据库,进行数据的持久化存储。同时,它也展示了Gradle构建系统在Android...
以下是关于SQLiteOpenHelper类的应用实例的详细说明: 1. **创建数据库** 当我们创建一个继承自SQLiteOpenHelper的类,例如`MyDBHelper`,我们需要重写`onCreate()`方法。在这个方法中,我们通常会写入创建表的SQL...
Android移动应用开发之使用ListView+SQLiteOpenHelper实现商品列表添加删除的界面 能够输入数据然后添加到数据库,ListView会自动展现数据库的内容,点击删除能够将数据库中的信息删除并更新ListView 实现思路: 1....
《Pro-Android-3 BookProvider SQLiteOpenHelper》是关于Android应用开发的一本专业书籍,主要探讨了如何在Android系统中利用`BookProvider`和`SQLiteOpenHelper`进行数据存储和管理。`BookProvider`是自定义的内容...
本篇文章将深入探讨如何在Android应用中实现SQLiteOpenHelper。 首先,我们了解SQLiteOpenHelper的主要职责。它主要有两个关键方法:`onCreate()` 和 `onUpgrade()`。`onCreate()` 方法在首次创建数据库时被调用,...
在Android开发中,SQLiteOpenHelper和SharedPreferences是两种非常重要的数据存储机制。SQLiteOpenHelper主要用于管理SQLite数据库,而SharedPreferences则用于存储轻量级的键值对数据。接下来我们将深入探讨这两个...