¿Puedo usar JSON en lugar de SQLite dentro de mi aplicación de Android?

Estoy desarrollando una aplicación de Android simple con una actividad que muestra algunos datos de un par de tablas en una base de datos mySQL en línea. Las tablas de las que estoy leyendo no son complicadas y no tendrán más de 100 filas.

Quiero que esta aplicación también se ejecute sin conexión, así que estoy pensando en guardar los datos localmente tan pronto como se actualice en formato JSON en lugar de entrar en el proceso de creación de SQLite DB para tablas tan simples.

¿Hay algún problema en eso? ¿Y por qué todo el mundo usa una base de datos incluso para el almacenamiento de datos simple?

preguntado el 24 de agosto de 12 a las 08:08

¿Por que no? Si está seguro de que los datos no crecerán mucho, está bien usar colecciones json:

No veo ningún problema. SQLite, sin embargo, le daría garantías en cuanto a la consistencia de los datos y la atomicidad de sus operaciones:

3 Respuestas

El hecho es que debe saber qué restricciones habrá en sus datos. Como dijo @njzk2 en los comentarios, serializar sus datos (con JSON) es mucho más fácil, pero no tendrá ninguna garantía sobre sus datos. El uso de una base de datos le permite estar seguro de la atomicidad de sus operaciones (no realizará operaciones al mismo tiempo en los datos que corren el riesgo de agregar errores) y, con la ayuda de cosas como claves primarias o claves externas, también asegura la consistencia de sus datos.

Así que solo tendrá que ver si necesita estas restricciones o no para elegir cómo guardar sus datos.

Respondido 24 ago 12, 08:08

Al desarrollar software, debe tener en cuenta lo que podría suceder en el futuro con sus datos de E/S, tanto en su estructura como en su tamaño.

Incluso si ahora sus datos son pequeños, es posible que no lo sean en el futuro. Entonces, si usa archivos como almacenamiento, es posible que tenga que pasar a una base de datos más adelante en el futuro. Entonces, para evitar esto, la mayoría de las personas eligen usar la base de datos de inmediato y evitar tener problemas futuros con el tamaño de los datos, ya que una base de datos funcionará mucho más rápido y confiable (por ejemplo, integridad de referencia) que un archivo de texto sin formato, especialmente si los datos son de cierta Talla.

Además, una base de datos es bastante más flexible en su estructura, y cambiar la estructura es fácil (bueno, al menos más fácil que con los archivos). Este no es el caso de un archivo, donde si desea cambiar la estructura del archivo, debe volver a escribir todo el código de carga del archivo, lo cual es bastante más engorroso que volver a escribir un par de instrucciones SQL.

Respondido 24 ago 12, 10:08

puede usar el archivo para almacenar json o / p y puede analizar json localmente desde ese archivo sin necesidad de db

Respondido 24 ago 12, 08:08

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.