如果想操作多個資料庫就不要把資料庫的名字寫死了
public MyOpenHelper(Context context, String name){
//第一個參數上下文
//第二個參數 資料庫的名字 如果傳入null 就是在記憶體中建立一個資料庫 記憶體中的資料庫在應用退出之後 資料就會丢失
//如果是聊天記錄之類我真正的想給它存起來,下一次再啟動還想用那你就要給它存儲到一個具體的資料庫裡面。這個名字就一定要傳進來
//第三個參數 遊标工廠 如果使用系統預設的遊标工廠就傳入null
//第四個參數 資料庫的版本号 用版本号來控制資料庫的更新和降級 版本号從1開始
super(context, "itheima.db", null, 1);
// TODO Auto-generated constructor stub
}
把"itheima.db"用String name代替而不是寫死了就可以操作多個資料庫了.如果寫死的話拿到的SQLiteDatabase實際上操作的都是同一個資料庫就是這個itheima.db.當資料庫檔案itheima.db第一次建立的時候,它會走onCreate().一旦我這個資料庫檔案建立起來之後,再去運作這個項目,這個onCreate()就不會走了.因為它隻是當資料庫檔案第一次建立的時候才會執行onCreate().
onCreate()就是當資料庫檔案第一次建立的時候被執行。onCreate()做表結構的初始化也可以丢一些初始化的資料。
當資料庫更新的時候就會走這個onUpgrade
資料庫更新的SQL語句什麼時候會被調用?資料庫更新就是版本号增加的時候。
super(context, "itheima.db", null, 2);
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {