2

我想管理(创建/删除/更新)一个有 18 列的表。通常,为了创建表格,我使用以下代码。有没有更聪明的方法,比如将列名放入数组等?人们如何处理大桌子?

一如既往地感谢您的帮助。

private static final String COL1 = "col1";
private static final String COL2 = "col2";
private static final String COL3 = "col3";
........
........
private static final String COL18 = "col18";

public dbhandler(Context context) {
    super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
    String CREATE_TABLE = "CREATE TABLE " + TABLE_NAME + "("
                + COL1 + " INTEGER PRIMARY KEY," + COL2 + " TEXT,"
                + COL3 + " TEXT," + .............................+ COL18 + " TEXT")";
        db.execSQL(CREATE_TABLE);
}
4

3 回答 3

1

这样做的更聪明的方法是使用db4o(数据库 4 对象)。虽然创建这样的数据库具有以下优点:

  1. 它纯粹基于对象数据库。
  2. 没有像 sqlite 那样的表映射。
  3. 节省时间和代码量。
  4. 通过根据需要多次保存和检索对象来重用对象。
  5. 受益于本机查询。

欲了解更多信息,请参阅: http: //www.sohailaziz.com/2012/09/using-database-for-objects-db4o-in.html

于 2013-11-08T10:32:34.983 回答
0

您可以制作元组(列名和类型),并将它们存储在Array. 在中,onCreate您可以循环它并将其添加到CREATE_TABLE字符串中。

但是,除非您要对列进行大量更改,否则简单的复制和粘贴行就足够了。

于 2013-11-08T09:49:58.290 回答
0

如果您使用大表,最好的方法是使用 SQLiteManager 浏览器。剩下的所有操作都在普通的 .java 文件中进行。如果您使用 2 个或更多表,请使用 SQLiteManager 插件。

于 2013-11-08T10:42:23.203 回答