android 內置關係型數據庫 SQLite

SQLiteOpenHelper是一個抽象類,這意味着如果我們想要使用它的話, 就需要創建一個自己的幫助類去繼承它。SQLiteOpenHelper中有兩個抽象方法,分別是  onCreate()和onUpgrade(),我們必須在自己的幫助類裏面重寫這兩個方法,然後分別在這兩個方法中去實現創建、升級數據庫的邏輯。 SQLiteOpenHelper 中還有兩個非常重要的實例方法,getReadableDatabase()和 getWritableDatabase()。這兩個方法都可以創建或打開一個現有的數據庫(如果數據庫已存在 則直接打開,否則創建一個新的數據庫),並返回一個可對數據庫進行讀寫操作的對象。不同的是,當數據庫不可寫入的時候(如磁盤空間已滿)getReadableDatabase()方法返回的對象將以只讀的方式去打開數據庫,而getWritableDatabase()方法則將出現異常。

 SQLiteOpenHelper中有兩個構造方法可供重寫,一般使用參數少一點的那個構造方法即可。這個構造方法中接收四個參數,第一個參數是Context,這個沒什麼好說的,必須要 
 它才能對數據庫進行操作。第二個參數是數據庫名,創建數據庫時使用的就是這裏指定的名稱。第三個參數允許我們在查詢數據的時候返回一個自定義的Cursor,一般都是傳入null。第四個參數表示當前數據庫的版本號,可用於對數據庫進行升級操作。構建出 SQLiteOpenHelper的實例之後,再調用它的getReadableDatabase()或getWritableDatabase()方法就能夠創建數據庫了,數據庫文件會存放在/data/data/<packagename>/databases/目錄下。此時,重寫的onCreate()方法也會得到執行,所以通常會在這裏去處理一些創建表的邏輯

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章