¿Dónde almacenar el archivo de base de datos SQLite?

8

Estoy escribiendo una solicitud para aprender palabras extranjeras de exactamente un idioma (inglés en este momento), que actualmente tiene un diseño ineficaz.

Yo uso Java y SQLite-jdbc para guardar las palabras. Después de comenzar, la aplicación descarga una lista de palabras separadas por comas e inserta cada par de valores en la Base de datos. Alojé la lista de palabras en un repositorio github adicional, porque pensé que no debería almacenar el archivo de la base de datos dentro del repositorio git de desarrollo, es binario, por lo que cada vez que haga algo con la base de datos, el hash del archivo de la base de datos cambiará. No me gusta eso, porque entonces tendría que crear mensajes de confirmación ilegibles, y el cambio real en la base de datos sería difícil de entender.

Por lo tanto, mi pregunta real: ¿hay una solución más elegante para guardar el archivo DB que guardarlo dentro del repositorio de git? ¿Debo simplemente almacenar el archivo de base de datos actual en otro host de archivos? ¿Cuáles son las mejores prácticas para tal situación?

toogley
fuente

Respuestas:

20

Almacene las palabras usando un formato de texto y construya una base de datos durante la construcción.

En lugar de almacenar la información en formato binario y almacenar el archivo binario en el control de versión, mantenga los pares en un archivo CSV. Esto le permite cambiarlo fácilmente, confirmar los cambios y, más tarde, difflos cambios con facilidad.

Más tarde, cuando realmente necesite estos datos en una base de datos, realice una inserción masiva desde el archivo CSV. Esto se puede hacer durante una compilación o implementación. Por cierto, SQLite tiene una característica que hace posible (y más importante rápidamente) importar datos de archivos CSV.

Arseni Mourzenko
fuente