A continuación encontrarás traducido al Castellano el artículo escrito por Paul Lefebvre y publicado originalmente en el Blog Oficial de Xojo.
Xojo 2024 Release 1 incluye una versión actualizada de SQLite para tus apps Desktop, Web, Consola y iOS. Hemos actualizado la librería desde la versión 3.39.4 (del 29 del 9 de 2022) a la versión 3.45.1 (publicada el 30 del 1 de 2024). Estas son algunas de las mejoras que aporta.
Funciones
Hay unas cuantas funciones nuevas SQLite que puedes utilizar en tus instrucciones SQL.
concat()
La función concat() toma un número arbitrario de cadenas, proporcionadas como parámetros, y las concatena (une) como una sola. Las anteriores versiones de SQLite precisaban que utilizases el operador concat, es decir el operador de doble barra: ||. Concat() es una función estándar disponible en otras muchas bases de datos (PostgreSQL, MySQL, y SQL Server), de modo que es agradable ver su llegada en SQLite dado que así permite escribir código SQL más consistente.
Utilizando la base de datos de ejemplo Chinook, esta instrucción SQL concatena las columnas Name y Composer de la tabla Track:
SELECT concat(Name, ‘ by ‘, Composer) FROM Track
Y este es el resultado
concat_ws()
El método concat_ws() es igual a concatenar… pero usando un separador. Aparte del nombre un tanto peculiar, funciona del mismo modo salvo que el primer parámetro se utilizará como el separador que se insertará entre cada cadena. Esta instrucción SQL separa los campos Name, Composer y Milliseconds con “-“:
SELECT concat_ws(‘---‘, Name, Composer, Milliseconds) FROM Track
Y este es el resultado obtenido:
timediff()
La función timediff() calcula el tiempo transcurrido entre dos fechas, y devuelve el resultado en un formato legible.
Esta instrucción SQL muestra la diferencia de tiempo entre el 12 de Diciembre del 2023 y el 26 de Marzo de 2024:
SELECT timediff('2023-12-12','2024-03-26')
Y el resultado es de 3 meses y 14 días (observa que es negativo dado que la fecha anterior es el primer parámetro proporcionado):
Otros cambios
En general no he advertido muchos otros cambios significativos en cuanto a nuevas características. Sin embargo se han corregido muchos errores, especialmente en torno a la comprobación de la integridad de la base de datos y, de algún modo, el soporte JSON.
Puedes encontrar el listado completo de los cambios realizados en SQLite en su página de Histórico de Revisiones.