2011-12-14 41 views
14

Tengo una pequeña pregunta sobre el almacenamiento de datos en una base de datos SQLite. ¿Cuántos registros en una base de datos SQLite podemos almacenar al máximo? ¿Hay alguna limitación? Si los datos van más allá de esta limitación, ¿qué tipo de error ofrece? ¿Fallará todo el sistema o qué ocurre?Capacidad máxima de almacenamiento de la base de datos SQLite

+0

relacionadas: http://stackoverflow.com/questions/3482635/what-is-a-maximum-size-of-sqlite-database-on-android – nawfal

+0

1 Tera Byte .... –

Respuesta

13

Basado en this página:

Android no impone ninguna limitación más allá de la norma SQLite conceptos. Recomendamos incluir un campo de clave de valor de autoincrement que se puede usar como una ID única para encontrar rápidamente un registro. Esto no es requerido para datos privados, pero si implementa un proveedor de contenido, debe incluir una ID única usando la constante BaseColumns._ID.

El límite está vinculado a SQLite limitation. En cuanto a lo que sucedió cuando alcanzamos ese límite, supongo que Android elevará SQLiteFullException.

+0

Gracias @silent , Si almaceno 1 0r 2 días, la información de ubicación en sqlite para peridiocidad de 15 minutos, ¿se llenará? ¿Cómo puedo truncar la tabla si la base de datos se llena? –

+2

4 * 24 = 96 entrada/día = 1.000.000.000/96 = ~ 28500 años. Creo que, para su situación, nunca tendrá que truncar. Sin embargo, aún puede hacer 'DELETE * FROM yourtable' para truncar sus datos. – ariefbayu

+0

Muchas gracias ... por aclarar el concepto .... !! –

3

Sus 140 terabytes Máximo. En más detalles

SQLite fue diseñada originalmente con una política de evitar límites arbitrarios. Por supuesto, cada programa que se ejecuta en una máquina con memoria finita y espacio en disco tiene límites de algún tipo. Pero en SQLite, esos límites no estaban bien definidos. La política era que si cabía en la memoria y se podía contar con un entero de 32 bits, entonces debería funcionar .

Cuestiones relacionadas