[android]关于SQLiteOpenHelper的onCreate(SQLiteDatabase db)方法调用时机

帮助文档对此函数的说明:called when the database is created for the first time.

第一次创建数据库的时候调用,而数据库创建完后,系统便不会再调用此方法,如果想给数据库添加一个表,可以使用onUpdate()函数


onCreate(SQLiteDatabase db)方法当且仅当数据库第一次创建的时候执行。如果想在已有的数据库上新增一张新表,只在onCreate(SQLiteDatabase db)方法中增加一条sql语句和修改版本号是不够的,还要在onUpgrade()函数中在调用一次OnCreate()函数。

   
 
   
  1. public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
  2.         // TODO Auto-generated method stub
  3.         try {
  4.             db.execSQL("drop table if exists "+mTableName);
  5.             onCreate(db);
  6.         } catch (SQLException e) {
  7.             e.printStackTrace();
  8.         }
  9.     }

你可能感兴趣的:(job)