SQLite é uma biblioteca de linguagem C que implementa um mecanismo de banco de dados SQL pequeno, rápido, independente, altamente confiável e completo. O SQLite é o mecanismo de banco de dados mais usado no mundo. O código-fonte do SQLite é de domínio público e está disponível gratuitamente para todos, para qualquer finalidade.
O SQLite 3.42.0 foi lançado oficialmente, as atualizações são as seguintes:
- Adicionado o comando de exclusão segura FTS5. Esta opção faz com que todas as análises forenses sejam removidas do índice invertido do FTS5 quando o conteúdo é removido.
- Funções JSON SQL aprimoradas para oferecer suporte a extensões JSON5
- As chamadas para sqlite3_config()
SQLITE_CONFIG_LOG
eSQLITE_CONFIG_PCACHE_HDRSZ
para sqlite3_initialize() agora podem ocorrer após sqlite3_initialize(). - Adicionadas as opções sqlite3_db_config():
SQLITE_DBCONFIG_STMT_SCANSTATUS
eSQLITE_DBCONFIG_REVERSE_SCANORDER
. - Melhorias no planejador de consultas:
- A otimização de "contagem de visualização" é habilitada por padrão.
- Evite calcular colunas não utilizadas em subconsultas.
- Melhorias na otimização de pushdown
- Melhorias na CLI:
- Adicionada a opção de linha de comando --unsafe-testing. Sem essa opção, alguns comandos de ponto (por exemplo: ".testctrl") agora estão desativados, pois são destinados apenas para teste e podem levar ao uso indevido de falhas.
- Permitir comandos
.log on
e.log off
, mesmo no modo --safe. --
Ser um argumento de linha de comando significa que todos os argumentos subsequentes-
que começam com são interpretados como argumentos não opcionais normais.- Os parâmetros Magic
:inf
e:nan
estão vinculados aos caracteres de ponto flutuante Infinity e NaN, respectivamente. - A opção de linha de comando --utf8 omite todas as conversões MBCS de e para o console do Windows em sessões interativas e define a página de códigos do console para E/S UTF-8 nessas sessões. A opção --utf8 é inútil em todas as outras plataformas.
- Adicionada a capacidade de as funções SQL definidas pelo aplicativo terem o mesmo nome que uma palavra-chave de junção: CROSS, FULL, INNER, LEFT, NATURAL, OUTER ou RIGHT.
- Melhorias no PRAGMA Integrity_check:
- Detecta e gera um erro quando os valores NaN são armazenados em colunas NOT NULL.
- Saída de mensagem de erro aprimorada para identificar a página raiz da árvore b quando um erro é encontrado na árvore b.
- Permite que extensões de sessão sejam configuradas para capturar alterações em tabelas que não possuem um ROWID explícito.
- Adicionado modificador de subsegundo para funções de data e hora.
- Valores negativos passados para sqlite3_sleep() são interpretados como 0 a partir de então.
- Profundidade de recursão máxima reduzida para arrays e objetos JSON de 2.000 para 1.000.
- A função integrada printf() foi estendida para que, além das conversões de números inteiros, a opção de vírgula agora também possa ser usada para conversões de ponto flutuante.
- Correções de bugs e otimizações de desempenho
Para mais detalhes, consulte: https://sqlite.org/releaselog/3_42_0.html