2012-02-04 22 views
33

Tengo una base de datos sqlite que se va a llenar desde un servicio web con inicialmente 1000 registros, luego insertaré más registros cada vez que tenga que hacerlo. mi pregunta es dónde almacenar la base de datos sqlite en el dispositivo para seguir insertando (ya sea en memoria interna o externa) es decir, si guardo la base de datos en la memoria interna y cuando se llena una memoria interna puedo moverla a externa y seguir insertando O si lo almaceno en el almacenamiento externo y el espacio de almacenamiento externo se llena y hay un espacio disponible en interno que puedo mover a interno y seguir insertando datos .. estoy muy confundido acerca de esto me puede ayudar cualquier sugerencia o enlaces por favorTienda Android SQLite

+0

que están en una forma de ganar buena placa cuestión :) – Lucifer

+0

como en la manera de ganar una buena respuesta :) insignia – confucius

+2

estoy en distancia a ** ** Guru insignia en un mes puede ser :) – Lucifer

Respuesta

78

Siguiendo Respuesta Estoy dando en base a mi experiencia personal.

  • primera sugerencia (Memoria/Teléfono interno)

    Cuando se está almacenando en la base de datos de la memoria interna, a continuación, para el rendimiento es muy bueno. Debido a que su aplicación se instalará en la memoria interna, por lo que al insertar 1000 registros y otro registro, para la aplicación sería más fácil acceder a la base de datos. El rendimiento de la aplicación será muy bueno. Pero cuando se trata de limitaciones de memoria, cuando la memoria interna se llene más que suficiente, el rendimiento de su dispositivo disminuirá. Así que la memoria interna es mejor hasta la base de datos de nivel medio.

  • segunda sugerencia (memoria externa, tarjeta SD)

    Cuando almacene base de datos en la memoria externa, como tarjeta SD y luego para el rendimiento, el rendimiento de la aplicación habrá poco más lento que la memoria interna. Sin embargo, esto no será significativo para la base de datos de nivel medio. Cuando hay muy pocos datos, el rendimiento será el mismo en ambos casos. Ahora cuando está usando memoria externa, tiene un gran tamaño de almacenamiento de datos. No creo que nunca se llene por completo. Pero en caso de una gran cantidad de registros, el rendimiento disminuirá. A veces es posible que la aplicación falle.

+0

muchas gracias, pero si uso su primera sugerencia, ¿qué puedo hacer cuando se llene la memoria interna? ¿Cómo puedo manejar eso? – confucius

+0

¿Vas a escribir algún tipo de datos de fotos, video y audio? – Lucifer

+0

no solo texto ... – confucius

5

No estoy seguro de que esta sea una buena idea. Si tiene el servicio web que puede proporcionarle los datos que necesita, debe usar bases de datos locales solo para almacenar en caché una pequeña parte de los datos. De lo contrario, como acaba de decir, terminará llenando los recuerdos internos y externos.

+0

mi pregunta dónde decidir almacenar la base de datos para el caché con fines externos o internos – confucius