在Android中afinal框架下实现sqlite数据库版本升级的办法

     上一篇文章采用的是SQLiteOpenHelper中的onUpgrade方法实现数据库的升级。

     首先获取Context:

private Context  mContext=this;


然后实现FinalDb内的静态方法:

FinalDb.create(mContext,"afinal.db",true,2,this);	

 

 实现FinalDb的DbUpdateListener接口中的方法:


 

   

@Override
	public void onUpgrade(SQLiteDatabase db, int arg1, int arg2) {

		// TODO Auto-generated method stub
		try {
			InputStream in = mContext.getAssets().open("patch.sql");
			BufferedReader bufferedReader = new BufferedReader(
					new InputStreamReader(in));
			String sqlUpdate = null;
			while ((sqlUpdate = bufferedReader.readLine()) != null) {
				if (!TextUtils.isEmpty(sqlUpdate)) {
					db.execSQL(sqlUpdate);
				}
			}
			bufferedReader.close();
			in.close();
		} catch (SQLException e) {
			System.out.println(e.toString());
		} catch (IOException e) {
			System.out.println(e.toString());
		}	
	}


时间紧迫,没有写太多,大家可以自己研究。

 

posted on 2014-01-28 10:03  海南一哥  阅读(305)  评论(0编辑  收藏  举报

导航