SQLite是什麼呢?
簡單來說就是我們想保存資料,在關閉app時,下次開啟後,資料依舊還在,要達到此效果,就須寫個本地資料庫(MySQL、SQLite...),或者雲端資料庫(Firebase...)。
Android提供了對 SQLite數據庫的完全支持,應用程序中的任何類都可以通過名稱來訪問任何的數據庫,但是應用程序之外的就不能訪问。
首先創建一個class名為MyDBHelper(DB=DataBase的意思,也就是資料庫),繼承SQLiteOpenHelper。
Android中,通过SQLiteOpenHelper類別來實現對SQLite數據庫的操作。
方法名稱 | 使用來做... | 備註 |
---|---|---|
onCreate() |
創建資料庫 | 創建時自動調用 |
onUpgrade() |
升級資料庫 | |
close() |
關閉資料庫 | |
execSQL() |
做新增刪除修改 | 但不能查詢 |
query()、rawQuery() |
查詢資料庫 | |
insert() |
新增、插入 | |
delete() |
刪除 | |
getWritableDatabase() |
創建可以讀寫的資料庫 | 返回的SQLiteDatabase對象對資料庫進行操作 |
getReadableDatabase() |
創建可以讀的資料庫 | 返回的SQLiteDatabase對象對資料庫進行操作 |
public static final String DATABASE_NAME = "mydata.db";
public static final int VERSION = 1;
private static SQLiteDatabase database;
public MyDBHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
super(context, name, factory, version);}
sqLiteDatabase.execSQL(ItemDAO.CREATE_TABLE);
sqLiteDatabase.execSQL("DROP TABLE IF EXISTS " + ItemDAO.TABLE_NAME);
// 呼叫onCreate建立新版的表格
onCreate(sqLiteDatabase);