SQLiteOpenHelper深入淺出。,sqliteopenhelper
1.什麼是SQLiteOpenHelper?
就是字面上的意思:協助開啟SQLiteDatabase的工具類。
2.SQLiteOpenHelper作用?
主要是: 1.onCreate()中協助初始化資料庫的一些操作。如建表等
2.在onUpGrade()中協助更新資料庫,刪除舊的表,建立新的表等等。
3.為什麼要用SQLiteOpenHelper?
這個工具類就是依照java的單例模式衍生出來的。實質就是一個單例,高效。
4.怎麼使用?
SQLiteOpenHelper是一個抽象類別。需要繼承它才能創造出自已所需要的執行個體。
最主要要實現的方法是onCreate()和onUpGrade();
public class MySQLiteOpenHelper extends SQLiteOpenHelper {String sql;public MySQLiteOpenHelper(Context context, String name,CursorFactory factory, int version) {super(context, name, factory, version);}// 在資料庫被建立的時候調用。這裡一般是建立表等關於資料庫的初始化操作。@Overridepublic void onCreate(SQLiteDatabase db) {db.execSQL(sql);}// 在資料庫更新的時候調用。那麼,更新的判斷標準是什嗎?根據對比資料庫名稱和把當前version//和前一個version比較,如果當前version比較新,那就會調用。比較舊就會調用DownGrade();@Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {// 更新操作。如刪除舊的表,建立新的表等等。}//在newVersion比oldVersion小的時候調用@Overridepublic void onDowngrade(SQLiteDatabase db, int oldVersion, int newVersion) {// TODO Auto-generated method stubsuper.onDowngrade(db, oldVersion, newVersion);}}
----------------------------------------------------------歡迎交流。