SQLite 3.54.0 es un 4 % más rápido y abandona Windows XP
SQLite 3.54.0 es alrededor de un 4 % más rápido, añade una función diskused() que sustituye a sqlite3_analyzer, cambia valores predeterminados de la CLI y abandona el soporte de Windows XP.
3 min de lectura

En cifras
- faster than the previous release, in CPU cycles
- ~4%
- faster than SQLite 3.51.0 a year ago
- ~7.5%
- now the oldest supported Windows version
- Vista
SQLite 3.54.0 se publicó el 9 de octubre de 2026 y es alrededor de un 4 % más rápido que la versión anterior. SQLite es el pequeño motor de bases de datos integrado en teléfonos, navegadores e innumerables aplicaciones, por eso incluso una mejora modesta de velocidad llega a un enorme número de dispositivos. Esta versión también cambia varios valores predeterminados de la herramienta de línea de comandos y abandona el soporte de Windows XP. La API, la sintaxis SQL y el formato de archivo siguen siendo retrocompatibles, señala Linux Compatible.
Cuánto más rápido
Las notas de la versión dan dos cifras:
- Alrededor de un 4 % más rápido que la versión anterior
- Alrededor de un 7,5 % más rápido que la versión 3.51.0, publicada un año antes
SQLite mide la velocidad contando ciclos de CPU mientras ejecuta su prueba de rendimiento speedtest1 bajo valgrind en Linux x64. Las notas de la versión advierten de que los resultados varían según la carga de trabajo, las opciones de compilación, la CPU, el compilador y el sistema operativo.
Gran parte de la mejora procede del planificador de consultas, la parte que decide cómo ejecutar cada consulta:
- Un UPDATE en una tabla con índices de expresión ahora omite el índice cuando el valor indexado no ha cambiado.
- Expresiones como
x OR TRUEyx OR FALSEse gestionan mejor. - DISTINCT se ignora en un SELECT del lado derecho de IN, donde no supone ninguna diferencia.
- Una UNION con
LIMIT 1es más rápida y usa menos memoria.
Nuevas funciones y límites
SQLite 3.54.0 añade varias herramientas nuevas para desarrolladores:
| Novedad | Qué hace |
|---|---|
diskused() | Una extensión opcional que informa del uso de disco; sustituye al obsoleto sqlite3_analyzer |
%J y %j | Nuevas conversiones de printf() y format() para literales de cadena JSON |
sqlite3_result_str() | Una nueva interfaz C |
sqlite3_incomplete() | Una nueva interfaz C |
weekday -N y end of | Nuevos modificadores de fecha y hora |
SQLITE_LIMIT_SCHEMA | Una nueva categoría de sqlite3_limit() |
SQLITE_LIMIT_TRIGGER_STEPS | Una nueva categoría de sqlite3_limit() |
SQLite ahora usa O_TMPFILE para los archivos temporales cuando el sistema lo admite. ALTER TABLE también se niega a añadir, eliminar o renombrar una columna llamada ROWID, ROWID u OID.
Hay un cambio relacionado con la seguridad. El autorizador, una función de retrollamada que aprueba o bloquea acciones SQL, ahora se ejecuta para las funciones SQL de una cláusula DEFAULT de CREATE TABLE. Se ejecuta cuando se crea la tabla y cuando se usa el valor predeterminado, pero no cuando el esquema se lee al abrir.
Cambios en la línea de comandos
El shell sqlite3 recibe varios cambios, y algunos de ellos alteran el comportamiento predeterminado:
- El indicador se puede configurar con las variables de entorno
SQLITE_PS1ySQLITE_PS2, y el indicador predeterminado respetaNO_COLOR. - Los encabezados de columna ahora aparecen en los modos de columnas incluso cuando una consulta no devuelve filas.
.modeincorpora--rowcount on,--ifmty--fpfmt, y--titles alwayspasa a ser el valor predeterminado.- Una línea que solo contiene
goo/ya no termina una instrucción, salvo que SQLite se compile con-DSQLITE_SHELL_LEGACY_COMMAND_TERMINATOR. - El nuevo comando
.diskusedusa la funcióndiskused().
Fin del soporte de Windows XP
SQLite ya no admite Windows XP ni versiones anteriores, incluido Windows CE. Windows Vista, de alrededor de 2007, es ahora el mínimo. En Windows, algunos bloqueos internos usan ahora Slim Reader/Writer Locks, una función más reciente de Windows. Las aplicaciones UWP y WebUI deben compilarse con -DSQLITE_UWP=1. Linux, macOS, BSD y otros sistemas tipo Unix no se ven afectados.
SQLite no es el único que recorta el soporte de versiones antiguas de Windows. Rust 1.100 dejó de distribuir su compilador para Windows de 32 bits a principios de este mes.
Qué significa para los desarrolladores
- Actualice por la velocidad. Una mejora del 4 % en ciclos de CPU llega gratis para la mayoría de las aplicaciones. Ejecute sus propias pruebas de rendimiento, ya que los resultados dependen de la carga de trabajo.
- Revise los scripts que usan la CLI. Los encabezados ahora se imprimen con resultados vacíos, y
goo/ya no terminan una instrucción. Los scripts que analizan la salida desqlite3pueden necesitar un ajuste. - Sustituya
sqlite3_analyzer. Está obsoleto. Pase los informes de uso de disco a.diskusedo a la funcióndiskused(). - Audite las migraciones con ALTER TABLE. Cualquier migración que toque una columna llamada ROWID, ROWID u OID fallará ahora.
- Compruebe los destinos Windows. Si todavía distribuye para Windows XP o Windows CE, quédese en una versión anterior de SQLite o abandone esos sistemas.
- Revise las funciones de retrollamada del autorizador. Si su aplicación usa una, pruebe las tablas cuyas cláusulas DEFAULT llaman a funciones SQL.
La mayoría de las aplicaciones pueden actualizarse sin riesgo. Pruebe antes los scripts de la CLI y las migraciones antiguas.
Fuentes
Artículos relacionados

GDB 18.1 añade depuración non-stop en Windows y elimina stabs
GDB 18.1, lanzado el 25 de septiembre, trae depuración non-stop a Windows 10+, nuevos comandos save y de entorno, y elimina el antiguo formato stabs.

Wine 11.18 admite controladores de núcleo y Staging arregla WoW64
Wine 11.18 salió el 18 de septiembre con 380 commits y 21 correcciones. Wine-Staging lleva 273 parches extra, dos de ellos para servicios WoW64.

ReactOS 0.4.16 trae un instalador gráfico y sincronía con Wine 10
ReactOS 0.4.16 llegó el 29 de agosto de 2026 tras unos 18 meses y 2.808 commits. Añade un instalador gráfico, un nuevo controlador ATA y la sincronía con Wine 10.