2014-05-16 27 views
0

我使用SQLiteAssetHelper处理数据库来实现选择,插入和更新。但我需要不止一个database;我可以将所有数据库的方法放在一个类中吗?我试过了,但错误是找不到我的第二张表。谢谢。如何在SQLiteAssetHelper中使用多个表?

+1

“但我需要多个数据库” - 为什么?一个数据库可以有多个表。 – CommonsWare

+0

@CommonsWare我很抱歉的混淆,我的意思是多个表。 – dacandou

回答

0

你是什么意思所有的数据库方法在一个类

对于多个数据库,您不能有一个Helper类。每个数据库由代表一个助手。然后,您可以创建另一个在其构造函数中使用助手并使用它创建方法的类。

编辑

对于要使用的每个表,你需要创建一个扩展SQLiteAssetHelper类。

public class MyDatabase extends SQLiteAssetHelper { 

    private static final String DATABASE_NAME = "northwind.db"; 
    private static final int DATABASE_VERSION = 1; 

    public MyDatabase(Context context) { 
     super(context, DATABASE_NAME, null, DATABASE_VERSION); 
    } 
} 

对DATABASE_NAME变量中的每个表使用不同的名称。

然后使用您想要读取或写入的表格对应的帮助程序。这里有样本:http://developer.android.com/training/basics/data-storage/databases.html#ReadDbRow

+0

然后我可以使用多个表吗? – dacandou

+0

当然。在使用SQLiteAssetHelper之前,您是否熟悉SQLiteOpenHelper? – bobby4078

+0

不是的..我是完全新的Java和SQL。起初我使用openHelper,但是为了在资产下使用数据库,我更改为SQLiteAssetHelper。我在班级中分配了两张桌子,但在主要活动中,找不到第二张桌子。有多个表的教程吗? – dacandou

相关问题