Az SQLite 3.53 kijavítja a WAL-adatsérülési hibát, és új SQL-funkciókat hoz

enlightened Ez az oldal a közösségért készül. heart Kövess minket máshol is:  Linux Mint Magyar Közösség a Mastodon-on  Telegram csatorna – csak hírek  Beszélgessünk a Telegram – Linux csevegő csoport  Hírek olvasása RSS segítségével  Linux Mint Hivatalos Magyar Közösség a Facebook-on      Linux Mint Baráti Kör a Facebook-on
wink Ha hasznosnak találod, és szeretnéd, hogy folytatódjon, támogasd a munkát Ko-fi vagy Paypal segítségével. laugh

kami911 képe

Megjelent az SQLite 3.53, amely kijavít egy adatbázis-adatsérülést okozó hibát a WAL reset kezelésében, és számos frissítést hoz az SQL, a CLI, a query planner és az API területén.

Fontos újdonság a Query Result Formatter, amelyet mostantól a CLI használ az eredmények formázásához. A kiadási megjegyzések szerint ez javítja a megjelenítési lehetőségeket, a táblázatos kimenetben alapértelmezetten jobbra igazítja a numerikus értékeket, és az interaktív CLI alapértelmezett kimenetét dobozolt Unicode táblázatokra állítja a jobb olvashatóság érdekében. A batch mód a kompatibilitás miatt megtartja a korábbi kimeneti formátumot.

Az SQLite 3.53 az SQL nyelvi támogatását is bővíti. Az ALTER TABLE mostantól hozzáadhat és eltávolíthat NOT NULL és CHECK megszorításokat. Az új REINDEX EXPRESSIONS utasítás újraépíti a kifejezésindexeket. A TEMP triggerek törzse mostantól lekérdezheti és módosíthatja a main sémában lévő táblákat, a VACUUM INTO pedig támogatja a reserve mennyiség beállítását URI fájlnévparaméteren keresztül. Két új SQL-funkció is érkezett:

json_array_insert()

és

jsonb_array_insert()

.

A CLI felhasználói számára a

.mode

parancs jelentős fejlesztéseket kapott. A dot-parancsok végén álló önálló pontosvesszőket mostantól figyelmen kívül hagyja. Kijavították a

.testcase

és a

.check

körüli problémákat. A parancssorban megadott, nem üres

.sql

vagy

.txt

fájlokat mostantól SQL- vagy dot-parancs szkriptekként értelmezi.

További újdonság az egyszeri futtatási mód a

.timer

számára, egy új timeout opció a

.progress

parancshoz, valamint a

.indexes

frissítése: a mintája mostantól az indexnevekre illeszkedik, nem a táblanevekre. Emellett átdolgozták a lebegőpontos értékek szöveggé alakítását a jobb teljesítmény érdekében; a kerekítés alapértelmezésben most 17 jelentős diGitt használ 15 helyett.

A query planner is több frissítést kapott. Az SQLite mostantól következetesen sort-and-merge eljárást használ az EXCEPT, INTERSECT és UNION műveleteknél, mivel ez általában gyorsabb, mint a hash-táblás megoldás. A kiadás javítja a join sorrendjének kiválasztását nagy star-schema joinoknál, bővíti az EXISTS-to-JOIN optimalizációt, finomítja az omit-noop-join kezelést, és több lehetőséget teremt az egyetlen indexre épülő optimalizációra bizonyos GROUP BY és ORDER BY esetekben.

Végül érdemes kiemelni az új, önjavító index funkciót, amely a beragadt kifejezésindexek problémáját kezeli. Emellett az SQLite bevezeti a REINDEX EXPRESSIONS utasítást is, amellyel szükség esetén közvetlenül újraépíthetők a kifejezésindexek.

További részletekért nézd meg a változásnaplót.