-1

我开发了一个小型 java.lang.reflect.InvocationHandler 拦截方法调用(来自 json webservice)并将结果缓存到本地 SQLite db。如果没有互联网连接,则从本地缓存中读取结果。

一切正常;我的问题如下:

拦截的每个方法都可以返回不同的实体,我使用反射将每个实体保存在不同的表上。我事先不知道我需要创建的所有表,所以每次我创建一个 SQLiteOpenHelper “如果不存在则创建表 {ENTITY_NAME}”,并且每次我将数据库版本增加 1 时调用 onUpgrade 方法.

这适用于开发环境,但我一点也不喜欢。

有人可以推荐一个更好的解决方案来用新表更新数据库吗?

谢谢你

4

1 回答 1

0

尝试 mYourDbHelper.getWritableDatabase().execSQL("CREATE TABLE ....")从您需要创建另一个表的位置

于 2012-07-06T15:54:17.223 回答