2011-12-29 18 views

Respuesta

4

Usted acaba de definir una columna con tipo entero. SQLite establece la longitud de columna en 1,2,4,8 dependiendo de su entrada.

160

del entero SQLite docs

. El valor es un entero con signo, almacenado en 1, 2, 3, 4, 6 u 8 bytes, dependiendo de la magnitud del valor.

Desde long es de 8 bytes y INTEGER También puede guardar los valores de 8 bytes, puede utilizar INTEGER.

1

SQLITE fijará anchura número entero adecuado dependerá de su entrada

12

Crear la columna como un tipo de INTEGER:

db.execSQL("CREATE TABLE IF NOT EXISTS " + TABLE_A + "(" 
       + KEY + " INTEGER" + ")"); 

colocar el valor long en INTEGER columna:

contentValues.put(KEY, object.getLongValue()); 
db.insert(TABLE_A, null, contentValues); 

Importante : recupera el valor del cursor como LONG

Cursor cursor = db.rawQuery("SELECT * FROM " + TABLE_A, null); 
long value = cursor.getLong(0); 
Cuestiones relacionadas