各位看官們大家好,上一回中咱們說的是Android中數據存儲之數據庫的例子,這一回咱們繼續說該例子。閒話休提,言歸正轉。讓我們一起Talk Android吧!
看官們,我們在上一章回中主要是對數據庫這種數據存儲方式進行了概述性介紹,這一回中我們介紹如何創建數據庫。
Android提供了一個叫作SQLite的數據庫,並且提供了很多編程接口供我們使用,我們創建數據庫時使用的是SQLiteOpenHelper
類提供的接口,下面我們將通過代碼結合文字的形式來介紹如何創建數據庫,下面是具體的操作步驟請大家參考:
- 1.自定義一個SQLiteOpenHelper類的子類,並且在類中重寫構造方法和onCreate()方法來實現對數據庫的操作;
// 創建SQLiteOpenHelper的子類並且重寫構造方法和onCreeate()等回調方法
class SchloolDB extends SQLiteOpenHelper {
public SchloolDB(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
super(context, name, factory, version);
}
public SchloolDB(Context context, String name, SQLiteDatabase.CursorFactory factory, int version, DatabaseErrorHandler errorHandler) {
super(context, name, factory, version, errorHandler);
}
@Override
public void onCreate(SQLiteDatabase db) {
Log.i(TAG, "onCreate of DB");
db.execSQL(CREATE_STUDENT);
}
@Override
public void onOpen(SQLiteDatabase db) {
super.onOpen(db);
Log.i(TAG, "onOpen of DB");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
Log.i(TAG, "onUpgrade of DB");
}
}
- 2.創建步驟1中子類的對象,創建時在構造函數中傳入數據庫的名字和版本號;
- 3.使用步驟2中創建的對象來創建或者打開數據庫,使用的方法爲getWritableDatabase()或者getReadableDatabase()方法;
public void CreateDB(Context context) {
//創建自定義子類的對象,通過該對象創建具體的數據庫
Log.i(TAG, "CreateDB: Create and open DB");
mSchloolDB = new SchloolDB(context,DB_NAME,null,DBVersion);
mDatabase = mSchloolDB.getWritableDatabase();
}
- 4.關閉數據庫;使用步驟2中創建的對象來關閉數據庫;使用的方法是close;
protected void onDestroy() {
super.onDestroy();
if(mSchloolDB != null && mDatabase != null) {
Log.i(TAG, "onDestroy: Close DB");
mDatabase.close();
mDatabase = null;
mSchloolDB = null;
}
}
各位看官,關於Android中數據存儲之數據庫的例子咱們就介紹到這裏,欲知後面還有什麼例子,且聽下回分解!