aspose.info
ES

Formato de archivo SQLite

Actualizado

¿Qué es un archivo SQLite?

Un archivo con extensión .sqlite es un archivo de base de datos SQL ligero creado con el software SQLite. Es una base de datos en un archivo en sí mismo e implementa un motor de base de datos SQL autocontenido, completo y altamente confiable. Los archivos de la base de datos SQLite se pueden usar para compartir contenido enriquecido entre sistemas simplemente intercambiando estos archivos a través de la red. Casi todos los móviles y ordenadores utilizan SQLite para almacenar y compartir datos, y es el formato de archivo elegido para aplicaciones multiplataforma. Debido a su uso compacto y facilidad de uso, viene incluido dentro de otras aplicaciones. Los enlaces de SQLite existen para lenguajes de programación como C, C#, C++, Java, PHP, y muchos otros.

Formato de archivo SQLite

SQLite en realidad es una biblioteca de lenguaje C que implementa SQLite RDBMS utilizando el formato de archivo SQLite. Con la evolución de nuevos dispositivos todos los días, su formato de archivo se ha mantenido compatible con versiones anteriores para adaptarse a dispositivos más antiguos. El formato de archivo SQLite se considera un formato de archivo a largo plazo para los datos.

El archivo de base de datos

Una base de datos SQLite se mantiene completamente a través de dos archivos.

  • Archivo de base de datos principal: contiene el estado completo de la base de datos SQLite
  • Rollback Journal: almacena información adicional en un segundo archivo y se utiliza durante la realización de transacciones. En caso de que SQLite esté en modo WAL, se mantiene un archivo de registro de cabeza de escritura.

archivo diario

Este archivo está destinado a mantener toda la información mantenida en caso de que la última transacción no se pueda completar en casos como un bloqueo de la computadora. Este archivo se utiliza para restaurar el archivo de la base de datos a un estado coherente.

Páginas

El archivo principal de la base de datos SQLite consta de una o más páginas. En cualquier momento, cada página de la base de datos principal tiene un único uso, que es uno de los siguientes:

  • La página de bytes de bloqueo
  • Una página de lista libre
  • Una página troncal de lista libre
  • Una página de hoja de lista libre
  • Una página de árbol b
  • Una página interior de tabla b-tree
  • Una página de hoja de tabla b-tree
  • Una página interior de índice b-tree
  • Una página de hoja de índice b-tree
  • Una página de desbordamiento de carga útil
  • Una página de mapa de puntero

El tamaño de los archivos de la base de datos SQLite puede oscilar entre unos pocos kilobytes y unos pocos gigabytes.

Encabezado SQLite

El encabezado de la base de datos SQLite se encuentra en los primeros 100 bytes del archivo de la base de datos. Cada archivo de base de datos SQLite válido comienza con 16 bytes (en hexadecimal): 53 51 4c 69 74 65 20 66 6f 72 6d 61 74 20 33 00. Los detalles de los campos de encabezado se muestran en la siguiente tabla.

DesplazamientoTamañoDescripción
016La cadena de encabezado: “Formato SQLite 3\000”
162El tamaño de página de la base de datos en bytes. Debe ser una potencia de dos entre 512 y 32768 inclusive, o el valor 1 que representa un tamaño de página de 65536.
181Versión de escritura del formato de archivo. 1 por legado; 2 para WAL.
191Versión de lectura del formato de archivo. 1 por legado; 2 para WAL.
201Bytes de espacio “reservado” no utilizado al final de cada página. Usualmente 0.
211Fracción máxima de carga útil integrada. Debe tener 64 años.
221Fracción mínima de cabida útil integrada. Debe tener 32.
231Fracción de carga útil de la hoja. Debe tener 32.
244Contador de cambio de archivo.
284Tamaño del archivo de base de datos en páginas. El “tamaño de la base de datos en el encabezado”.
324Número de página de la primera página troncal de lista libre.
364Número total de páginas libres.
404La cookie de esquema.
444El número de formato del esquema. Los formatos de esquema admitidos son 1, 2, 3 y 4.
484Tamaño de caché de página predeterminado.
524El número de página de la página de árbol b raíz más grande cuando se encuentra en los modos de vacío automático o vacío incremental, o cero en caso contrario.
564La codificación de texto de la base de datos. Un valor de 1 significa UTF-8. Un valor de 2 significa UTF-16le. Un valor de 3 significa UTF-16be.
604La “versión de usuario” tal como la lee y establece el pragma user_version.
644Verdadero (distinto de cero) para el modo de vacío incremental. Falso (cero) en caso contrario.
684El “ID de la aplicación” establecido por PRAGMA application_id.
7220Reservado para ampliación. Debe ser cero.
924La versión válida para el número.
964SQLITE_VERSION_NUMBER

Referencias

Véase también