Byl vydán SQLite 3.54, lehký systém správy databází, který je k dispozici jako připojitelná knihovna. Kód SQLite je šířen jako veřejné vlastnictví (public domain), což znamená, že ho lze používat bez omezení a bezplatně pro jakékoli účely. Finanční podporu vývojářů SQLite zajišťuje speciálně vytvořený konsorcium.
Hlavní změny:
- Byly provedeny optimalizace, které umožnily zrychlit průchod testem speedtest1 přibližně o 4 % ve srovnání s předchozí verzí a o 7,5 % ve srovnání s vydáním 3.51 před rokem. Výsledky se mohou lišit v závislosti na druhu zátěže, možnostech sestavení, CPU, kompilátoru a operačním systému.
- V utilitě sqlite byla implementována možnost používání escape sekvencí pro zobrazení dodatečných informací o stavu v příkazovém řádku, například „/x“ pro informace o otevřené transakci, „/r“ pro databázi v režimu pouze pro čtení, „/m“ pro databázi uloženou pouze v paměti, „/f“ pro vložení názvu souboru s databází, „/v“ pro zobrazení verze SQLite, „/:“ a „/;“ pro sestavení podmínkových výrazů, „/u“ a „/h“ pro vložení názvu uživatele a hostitele. Nastavení šablony příkazového řádku se provádí pomocí proměnných prostředí SQLITE_PS1 a SQLITE_PS2.
- V utilitě sqlite byly do příkazu „.mode“ přidány možnosti „—ifmt“, „—rowcount on“ a „—titles always“ pro nastavení formátu čísel s plovoucí desetinnou čárkou a řízení zobrazení počítadla řádků a nadpisu. Byla změněna obsluha příkazu „.diskused“. Výchozí hodnotou byl ponechán nadpis s názvy sloupců, pokud dotaz nevrátil žádné řádky, a také byla vypnuta údržba nulových bajtů při výstupu blobů v Unixových systémech.
- V plánovači dotazů bylo zrychleno provádění operací UPDATE v situacích, kdy existují indexy podle výrazů, ale indexovaná hodnota se nemění. Bylo optimalizováno provádění operací „expr OR TRUE“ a „expr OR FALSE“. Bylo zajištěno ignorování výrazu DISTINCT v SELECT poddotazech uvedených napravo od operátoru „IN“. Zrychlilo se zpracování a snížila se spotřeba paměti při uvedení výrazu „LIMIT 1“ v UNION dotazech.
- V příkazu ALTER TABLE byl zajištěn výstup chyby pro jakékoli pokusy o přidání, odstranění nebo přejmenování sloupců se rezervovanými názvy „ROWID“, „_ROWID_“ a „OID“.
- Byla přidána SQL funkce diskused() pro odhad místa, které tabulky a indexy na úložišti zabírají.
- Ve funkcích SQL printf() a format() byly přidány zástupce „%J“ a „%j“ pro výstup v JSON formátu.
- V funkci pro práci s daty a časem byly přidány modifikátory „weekday -N“ a „end of“.
- Na systémech s podporou flagu O_TMPFILE ve funkci open() je tento režim použit při vytváření dočasných souborů.
- Podpora starých verzí operačního systému Windows, včetně Windows CE a Windows XP, byla ukončena. Jako minimální verze byla stanovena Windows Vista.
Zdroj: opennet.ru
