如何通过两个SqliteHelper在一个SQLite DB中创建两个表

时间:2014-06-05 07:18:02

标签: java android database sqlite

我有两个SQLiteOpenHelper类:

public class SQLiteHelper1 extends SQLiteOpenHelper {

    // Database Version
    private static final int DATABASE_VERSION = 1;
    // Database Name
    private static final String DATABASE_NAME = PublicMacros.My_DB;

    private static final String TABLE_NAME = "table1";


public class SQLiteHelper2 extends SQLiteOpenHelper {

    // Database Version
    private static final int DATABASE_VERSION = 1;
    // Database Name
    private static final String DATABASE_NAME = PublicMacros.My_DB;

    private static final String TABLE_NAME = "table2";

当我使用SQLiteHelper1后跟SQLiteHelper2时,我收到错误消息:

no such table "table2"

如何从两个不同的SqliteHelper创建两个表?

1 个答案:

答案 0 :(得分:1)

SQLiteOpenHelper管理数据库文件。管理一个数据库文件的一个帮手。

如果您需要两个数据库帮助程序,则需要它们使用不同的数据库文件。

如果您只想在同一个数据库文件中使用两个表,请将它们放在同一个帮助程序中。这通常是理想的方式。

  

然后它变得太乱了

没有什么能阻止您干净地组织代码。例如,您仍然可以为不同的表使用单独的类。只是不要使它们SQLiteOpenHelper,而是由每个数据库文件单SQLiteOpenHelper调用的类。