È stata pubblicata la release di SQLite 3.44, un database leggero presentato come una libreria condivisibile. Il codice di SQLite è distribuito come dominio pubblico, ovvero può essere utilizzato senza restrizioni e gratuitamente per qualsiasi scopo. Il supporto finanziario per gli sviluppatori di SQLite è fornito da un consorzio appositamente creato, che include aziende come Bentley, Bloomberg, Expensify e Navigation Data Standard.
Variazioni principali:
- Nelle funzioni aggregate è consentita l'indicazione dell'espressione «ORDER BY» dopo l'ultimo parametro per elaborare gli argomenti della funzione in un ordine specificato, il che può essere utile per funzioni come string_agg() e json_group_array().
- È stato aggiunto il supporto per le funzioni SQL scalari concat() e concat_ws(), compatibili con PostgreSQL, MS SQL Server e MySQL.
- È stato aggiunto il supporto per la funzione aggregata string_agg(), compatibile con PostgreSQL e MS SQL Server.
- Nella funzione SQL strftime() è stato aggiunto il supporto per i specificatori «%e», «%F», «%I», «%k», «%l», «%p», «%P», «%R», «%T» e «%u».
- Molti errori legati all'espressione «CREATE TABLE» vengono ora riportati dopo l'esecuzione dell'espressione «CREATE TABLE», e non dopo il primo utilizzo della tabella.
- Nel comando «PRAGMA integrity_check» è stata implementata una verifica di coerenza del contenuto di varie tabelle virtuali incorporate, utilizzate nelle estensioni FTS3, FTS4, FTS5, RTREE e GEOPOLY.
- Le tabelle virtuali incorporate, utilizzate nelle estensioni FTS3, FTS4, FTS5, RTREE e GEOPOLY, possono essere utilizzate all'interno dei trigger.
- Impostando l'opzione SQLITE_DBCONFIG_DEFENSIVE, viene garantita la protezione contro l'attivazione della modalità «PRAGMA writable_schema».
- Nella compilazione con Microsoft C è attivata di default l'impostazione SQLITE_USE_SEH (Structured Exception Handling).
- Sono stati effettuati miglioramenti nel pianificatore delle query relativi alla scansione parziale degli indici quando vengono specificati valori costanti nella clausola WHERE per le colonne della tabella. A causa di regressioni identificate, è stata disabilitata l'ottimizzazione della scansione delle viste, aggiunta nella versione 3.42.0.
- È stata implementata una verifica runtime del supporto da parte del sistema per il tipo «long double» con precisione superiore a quella del tipo «double».
- Nell'interfaccia a riga di comando per Windows, di default è utilizzata la codifica UTF-8 per l'input e l'output (per disabilitarla è presente l'opzione «—no-utf8»).
Fonte: opennet.ru
