uvoľnenie , ľahkého DBMS, ktorý je dodávaný ako knižnica. Kód SQLite je distribuovaný ako verejné vlastníctvo (public domain), t.j. môže byť používaný bez obmedzení a bez nákladov na akýkoľvek účel. Finančnú podporu pre vývojárov SQLite zabezpečuje špeciálne vytvorený konzorcium, do ktorého patrí aj spoločnosti ako Adobe, Oracle, Mozilla, Bentley a Bloomberg.
Hlavné :
- Pridaná podpora (vypočítaných stĺpcov), ktoré umožňujú pri vytváraní tabuľky definovať stĺpec, ktorého hodnota sa automaticky vypočítava na základe obsahu iného stĺpca. Generované stĺpce môžu byť buď virtuálne (vytvárané na požiadanie pri každom prístupe), alebo uložené v databáze (uložené pri každej aktualizácii súvisiacich stĺpcov). Obsah generovaných stĺpcov je dostupný iba v režime čítania (zmena sa vykonáva iba cez modifikáciu hodnoty v inom stĺpci, ktorý sa podieľa na výpočte). Napríklad:
VYTVORIŤ TABUĽKU t1 (
a INTEGER HLAVNÝ KĽÚČ,
b INT,
c TEXT,
d INT GENEROVANÉ VŽDY AKO (a*abs(b)) VIRTUÁLNY,
e TEXT GENEROVANÉ VŽDY AKO (substr(c,b,b+1)) ULOŽENÝ
); - Pridané PRAGMA , nastavenie a zavádzacia možnosť „-DSQLITE_TRUSTED_SCHEMA“, ktoré umožňujú spravovať zapnutie ochrany pred prostredníctvom modifikácie schémy dát v databáze. Pri aktívnej ochrane sa obmedzuje používanie SQL-funkcií (neoznačených ako SQLITE_INNOCUOUS) v spúšťačoch, pohľadoch, výrazoch CHECK a DEFAULT, indexoch a generovaných stĺpcoch. Takisto sa zakazuje používanie virtuálnych tabuliek v spúšťačoch a pohľadoch, ak virtuálna tabuľka nie je jednoznačne deklarovaná s príznakom SQLITE_VTAB_INNOCUOUS.
- Realizovaná možnosť priradenia určitým v aplikáciách SQL-funkciám vlastností (neškodné funkcie, ktoré nezávisia od vonkajších parametrov a nemôžu sa používať na vykonávanie škodlivých akcií) a (iba priamy volanie v SQL-žiadostiach, bez možnosti použitia v spúšťačoch, pohľadoch a schémach štruktúry dát);
- Pridaný modul s implementáciou funkcií na spracovanie UUID (RFC-4122);
- Pridané PRAGMA a funkcia na riadenie maximálnej veľkosti haldy;
- V PRAGMA bol pridaný výstup typu, vlastností a počtu argumentov každej funkcie;
- Do virtuálnej tabuľky DBSTAT režim agregovania údajov;
- V sqlite3_open_v2() bola implementovaná možnosť SQLITE_OPEN_NOFOLLOW, ktorá zabraňuje otvoreniu symbolických odkazov;
- Pre argument , odosielaný do funkcií JSON, bola pridaná podpora notácie polí „#-N“;
- V systéme prerozdelenia pamäte Implementovaná podpora dvoch samostatných pamäťových poolov, pričom každý z nich môže byť použitý na prideľovanie blokov rôznej veľkosti (rozdelenie umožňuje rozšíriť použitie systému lookaside, pričom znižuje veľkosť prideleného bufferu pre každé pripojenie z 120 na 48 kB);
- Podpora PRAGMA bola zrušená , ktorý bol nekompatibilný s VACUUM, generovanými stĺpcami a klesajúcimi indexmi (podpora zastaraného formátu môže byť vrátená cez flag SQLITE_DBCONFIG_LEGACY_FILE_FORMAT v sqlite3_db_config()).
Zdroj: opennet.ru
