Lanzamiento de la base de datos SQLite 3.38 y del conjunto de utilidades sqlite-utils 3.24

Se ha publicado la versión 3.38 de SQLite, una base de datos ligera presentada como una biblioteca conectable. El código de SQLite se distribuye como dominio público, es decir, se puede utilizar sin restricciones y gratuitamente para cualquier propósito. El apoyo financiero a los desarrolladores de SQLite es proporcionado por un consorcio creado específicamente, que incluye empresas como Adobe, Oracle, Mozilla, Bentley y Bloomberg.

Principales cambios:

  • Se ha agregado soporte para los operadores -> y ->>, que simplifican la extracción de datos en formato JSON. La sintaxis de los nuevos operadores es compatible con MySQL y PostgreSQL.
  • Se han incorporado funciones para trabajar con datos en formato JSON, para las cuales anteriormente se requería la construcción con la bandera ‘-DSQLITE_ENABLE_JSON1’. Se ha añadido la bandera ‘-DSQLITE_OMIT_JSON’ para deshabilitar el soporte de JSON.
  • Se ha añadido la función unixepoch(), que devuelve el tiempo epoch (el número de segundos desde el 1 de enero de 1970).
  • Se han implementado los modificadores ‘auto’ y ‘julianday’ para funciones relacionadas con el tiempo.
  • La función SQL printf() ha sido renombrada a format() para mejorar la compatibilidad con otras bases de datos (se mantiene el soporte para el nombre antiguo).
  • Se ha añadido la interfaz sqlite3_error_offset() para facilitar la localización de errores en la consulta.
  • Se han agregado nuevas interfaces de programación en la implementación de tablas virtuales: sqlite3_vtab_distinct(), sqlite3_vtab_rhs_value() y sqlite3_vtab_in(), así como nuevos tipos de operadores SQLITE_INDEX_CONSTRAINT_LIMIT y SQLITE_INDEX_CONSTRAINT_OFFSET.
  • La interfaz de línea de comandos garantiza un manejo correcto de los caracteres de tabulación y de nueva línea en el texto impreso en modos de múltiples columnas. Se ha añadido soporte para el uso de las opciones ‘—wrap N’, ‘—wordwrap on’ y ‘—quote’ al imprimir en múltiples columnas. En el comando .import se ha mejorado la corrección de los nombres de las columnas.
  • En el planificador de consultas, se ha implementado una estructura probabilística de filtro de Bloom para acelerar la ejecución de grandes consultas analíticas, aplicándose para determinar la existencia de un elemento en el conjunto. Para optimizar el procesamiento de bloques UNION y UNION ALL que abarcan expresiones SELECT con secciones ORDER BY, se ha utilizado un árbol de fusión balanceado.

Además, se puede destacar la publicación de la versión del conjunto sqlite-utils 3.24, que incluye utilidades y una biblioteca para manipular archivos con bases de datos SQLite. Se admiten operaciones como la inserción directa de datos JSON, CSV o TSV en un archivo de base de datos con la creación automática del esquema de almacenamiento necesario, la ejecución de consultas SQL sobre archivos CSV, TSV y JSON, la realización de búsquedas de texto completo en la base de datos, la transformación de datos y esquema de almacenamiento en situaciones donde ALTER TABLE no es aplicable (por ejemplo, para cambiar el tipo de columnas), y la extracción de columnas en tablas separadas.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster