Ormlite - 从同一活动访问两个数据库

时间:2014-08-20 15:41:45

标签: android android-activity android-sqlite ormlite

我有一个Android应用程序,我需要从同一个活动访问两个不同的数据库。

我正在使用Ormlite来读取/写入数据库。

    public class MyActivity extends OrmLiteBaseActivity<MyDatabaseHelper>

我需要为另一个数据库使用另一个数据库帮助程序。

有人可以指导我如何实现这个目标吗?

我应该使用相同的DatabaseHelper并在那里进行修改以支持这两个数据库吗?或者有没有办法在同一个活动中使用不同的databaseHelpers?

1 个答案:

答案 0 :(得分:0)

在您的情况下,我认为更好的解决方案是使用单独的帮助程序,而不是扩展OrmLiteBaseActivity

public class DatabaseHelperA extends OrmLiteSqliteOpenHelper {

    public static DatabaseHelper getInst(){
        return inst;
    }

    public static void init(Context c){
        if (inst == null) inst = OpenHelperManager.getHelper(c, DatabaseHelperA.class);
    }

    public DatabaseHelper(Context context) {
        super(context, "a.db", null, 1);
    }
}

public class DatabaseHelperB extends OrmLiteSqliteOpenHelper {

    public static DatabaseHelper getInst(){
        return inst;
    }

    public static void init(Context c){
        if (inst == null) inst = OpenHelperManager.getHelper(c, DatabaseHelperB.class);
    }

    public DatabaseHelper(Context context) {
        super(context, "a.db", null, 1);
    }
}