我想使用列类型Long
而不是来创建表Integer
。可能吗?
我想使用列类型Long
而不是来创建表Integer
。可能吗?
Answers:
int
,以确保您使用了很长时间。
将列创建为一种INTEGER
类型:
db.execSQL("CREATE TABLE IF NOT EXISTS " + TABLE_A + "("
+ KEY + " INTEGER" + ")");
将long
值放在INTEGER
列中:
contentValues.put(KEY, object.getLongValue());
db.insert(TABLE_A, null, contentValues);
重要提示:从游标中检索值为LONG
Cursor cursor = db.rawQuery("SELECT * FROM " + TABLE_A, null);
long value = cursor.getLong(0);
我认为类型不长。您可以使用INTEGER(或)Numeric。这是具有受支持数据类型的链接http://www.sqlite.org/datatype3.html
他的上述链接描述了64位Integer或本质上是long,还请参见 SQLite整数数据类型(如int,integer,bigint等)之间的区别是什么?
在INTEGER可以存储长,但是从长期做下去光标应该这样做:
int type = cursor.getType(j);
String value = cursor.getString(j);
try {
int intValue = Integer.parseInt(value);
field.set(object, intValue);
} catch (NumberFormatException e) {
long longValue = Long.parseLong(value);
field.set(object, longValue);
}
我用它在sqlite中存储时间戳