如何在Android的SqLiteDataBase中存储int []或float []?

时间:2014-11-10 09:03:22

标签: android arrays sqlite

我有所有这些字符串,如" TEXT"," INTEGER"等等文本或整数。

是否有任何方法可以添加整数数组或浮点数组?

谢谢!

@Override
public void onCreate(SQLiteDatabase db) {
    String CREATE_TABLE = "CREATE TABLE " + TABLE + "("
            + ID + " INTEGER PRIMARY KEY,"
            + ACCOUNT + " TEXT,"
            + TYPE + " INTEGER,"
            + AMOUNT + " INTEGER,"
            + YEAR + " INTEGER,"
            + MONTH + " INTEGER,"
            + DAY + " INTEGER,"
            + EXTRA + " TEXT"  + ")";
    db.execSQL(CREATE_TABLE);
}

3 个答案:

答案 0 :(得分:3)

无法存储数组。但你可以用其他方式做到。

要存储:使用逗号分隔的字符串转换数组并存储该字符。(阅读Convert String[] to comma separated string in java

要检索:将逗号分隔的字符串转换为数组。(阅读How to split a comma-separated string?

答案 1 :(得分:2)

更多SQL方法是创建一对多关系,并将数组存储为'many'表中的条目。

答案 2 :(得分:1)

在等待某人给出更好的答案时,你可能想尝试一下。

我通常只使用,

保存数组(从未尝试使用100多个项目等长数组)

例如:

1,3,5,6,7

然后我将使用split方法,并将这些值添加到List<Integer>