SQLite: cómo adjuntar una base de datos en memoria en SQLite

Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.

SQLite: cómo adjuntar una base de datos en memoria en SQLite

Este tutorial de SQLite explica cómo adjuntar una base de datos en memoria en SQLite con sintaxis y ejemplos.

describir

Se puede crear una base de datos SQLite en memoria y adjuntarla a una conexión de base de datos mediante el comando ATTACH DATABASE. Una base de datos en memoria se mantendrá en la memoria, no basada en archivos.

sintaxis

La sintaxis para adjuntar una base de datos en memoria en SQLite es:

ATTACH [DATABASE] ':memory:' AS database_name;

parámetro o parámetro

La base de datos es opcional. Este comando se puede ejecutar como ATTACH DATABASE o ATTACH. nombre_base_datos El nombre lógico de la base de datos en memoria que se utilizará en el contexto de la conexión de base de datos actual.

notas

  • Después de adjuntar una base de datos en memoria, use el nombre de la base de datos lógica para hacer referencia a los objetos en la base de datos en memoria.
  • Los nombres de las bases de datos main y temp son nombres reservados en las conexiones de bases de datos y no se pueden usar para adjuntar bases de datos. El nombre de la base de datos denominado main está reservado para la base de datos principal y el nombre de la base de datos denominado temp está reservado para la base de datos que contiene las tablas temporales.
  • La base de datos en memoria se desconecta automáticamente cuando se cierra la conexión de la base de datos.

ejemplo

Veamos un ejemplo de cómo adjuntar una base de datos en memoria en SQLite.

Primero, usaremos .base de datos El comando muestra todas las bases de datos en nuestra conexión actual:

sqlite> .database
seq  name             file                                                      
---  ---------------  ----------------------------
0    main             /prograrmaplus/test.sqlite

Como puede ver, tenemos una base de datos principal llamada main que se puede encontrar en la ubicación /prograrmaplus/test.sqlite. A continuación, adjuntemos una base de datos en memoria con el siguiente comando:

sqlite> ATTACH DATABASE ':memory:' AS mem_example;

Este comando creará y adjuntará una nueva base de datos en memoria llamada mem_example. Se almacenará en la memoria, no se guardará en un archivo.

Ahora que tenemos la base de datos en memoria adjunta, volvamos a ejecutar .base de datos El comando muestra todas las bases de datos en nuestra conexión actual:

sqlite> .database
seq  name             file                                                      
---  ---------------  ----------------------------
0    main             /prograrmaplus/test.sqlite
2    mem_example

Ahora puede ver que la base de datos en memoria llamada mem_example está adjunta. Se almacena en la memoria, no como un archivo, por lo que el valor del archivo está en blanco. Cuando desee acceder a uno de los objetos en una base de datos en memoria, puede prefijar el objeto con mem_example como nombre de la base de datos.

Para eliminar la base de datos en memoria adjunta de la conexión, use el comando DETACH DATABASE o cierre la conexión de la base de datos.

más ejemplos

Aquí hay más ejemplos que muestran cómo usar el comando ATTACH DATABASE en SQLite: