Ben sütun türü içeren bir tablo oluşturmak istiyorum Longyerine Integer. Mümkün mü?
Ben sütun türü içeren bir tablo oluşturmak istiyorum Longyerine Integer. Mümkün mü?
Yanıtlar:
Gönderen SQLite docs
TAM . Değer, değerin büyüklüğüne bağlı olarak 1, 2, 3, 4, 6 veya 8 baytta saklanan işaretli bir tamsayıdır.
Yana long8 bayt olduğunu ve INTEGERayrıca 8 bayt değerlerine tasarruf kullanabileceğiniz olabilir INTEGER.
int, uzun süre kullandığınızdan emin olun.
Sütunu bir INTEGERtür olarak oluşturun :
db.execSQL("CREATE TABLE IF NOT EXISTS " + TABLE_A + "("
+ KEY + " INTEGER" + ")");
longDeğeri INTEGERsütuna koyun :
contentValues.put(KEY, object.getLongValue());
db.insert(TABLE_A, null, contentValues);
Önemli: imleçten değeri şu şekilde alınLONG
Cursor cursor = db.rawQuery("SELECT * FROM " + TABLE_A, null);
long value = cursor.getLong(0);
Uzun bir tip olduğunu sanmıyorum. INTEGER (veya) Numeric'i kullanabilirsiniz. Desteklenen veri türleri http://www.sqlite.org/datatype3.html ile bağlantı burada
Yukarıdaki bağlantısı bir 64 bit Tamsayı veya Esasen bir uzun tasvir ediyor, ayrıca bkz. İnt, tamsayı, bigint gibi SQLite tamsayı veri türleri arasındaki fark nedir?
SQLIte, girişinize bağlı olarak uygun tam sayı genişliğini ayarlayacaktır
INTEGER saklayabilirsiniz uzun ama uzun olsun imleç böyle yapmalıdır:
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);
}
i depolamak için bu kullanmak damgası içinde sqlite