Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java SQLITE(android)中的处理表_Java_Android_Sqlite - Fatal编程技术网

Java SQLITE(android)中的处理表

Java SQLITE(android)中的处理表,java,android,sqlite,Java,Android,Sqlite,我想管理(创建/删除/更新)一个包含18列的表。通常,为了创建表,我使用以下代码。有没有更聪明的方法,比如将列名放入数组等。?人们如何处理大桌子 一如既往,谢谢你的帮助 private static final String COL1 = "col1"; private static final String COL2 = "col2"; private static final String COL3 = "col3"; ........ ........ private static fin

我想管理(创建/删除/更新)一个包含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);
}
您可以创建元组(列名和类型),并将它们存储在
数组中。在
onCreate
中,您可以对其进行循环,并将其添加到
CREATE_表
字符串中


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

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

  • 它完全基于对象数据库
  • 没有像sqlite中那样的表映射
  • 节省时间和代码量
  • 通过多次保存和检索对象来重用对象
  • 从本机查询中获益

  • 有关更多信息,请参阅:

    如果要使用大型表,最好使用SQLItemManager浏览器。剩下的所有操作都保存在normal.java文件中。如果要使用2个或更多表,请使用SQLItemManager插件。

    如果要将字段名放入数组中,则很难处理18个索引并记住任何索引中的字段名。所以我认为最好的方法是使用合适的域名,这样你们就可以很容易地使用。这就是“安卓”方式。我不知道简单地使用纯文本有哪些缺点(如
    “创建表t(a文本,b)”
    “从t中选择b”
    ,…)