c++ - databases - Guardar en disco una base de datos en memoria
sqlite3 c++ (2)
Hice una base de datos a través de sqlite en c ++.
El db se ha creado en la memoria (usando el parámetro ": memory:" instalado en un nombre de archivo), para tener un comportamiento muy rápido.
La base de datos es creada por las siguientes líneas:
sqlite3* mem_database;
if((SQLITE_OK == sqlite3_open(":memory:", &mem_database)){
// The db has been correctly created and
// I can do some stuff with it.
}
sqlite3_close(mem_database);
Mi problema es: ¿cómo puedo escribir la base de datos en memoria en el disco? (a través de c / c ++ por supuesto).
Leí algo acerca de los comandos ATTACH y DETACH sqlite, pero puedo hacer que funcionen solo con el shell interactivo sqlite (no del código c / c ++).
Saludos
Use la declaración de transacción antes de hacer algo a la mesa. Esto asegura un manejo rápido y también reversiones. De esta manera, no es necesario implementar la base de datos en la memoria directamente.
Vea este ejemplo: Cargar y guardar bases de datos en memoria