Avaldatud on SQLite 3.46 versioon, kergekaaluline andmebaasi haldussĂŒsteem, mis on vormindatud kui pluginaraamatukogu. SQLite kood jagatakse avaliku domeenina, see tĂ€hendab, et seda saab kasutada piiranguteta ja tasuta mistahes eesmĂ€rkidel. SQLite arendajate rahalist toetust pakub selleks loodud konsortsium.
Peamised muudatused:
- Numbrite nĂ€itamisel on vĂ”imalik kasutada eraldajat â_â arusaadavamate numbrite esitamiseks (nt 1_234_567).
- Lisatud on SQL-funktsioon json_pretty(), mis genereerib loetavama vÀljavÔtte JSON-formaadis, vormindatuna plokkide kahemÀrgiste taanditega.
- TĂ€psemate vĂ”imalustega on laiendatud PRAGMA optimize operatsiooni, mis optimeerib andmebaasi ja kĂ”iki andmeskeeme, et saavutada parim pĂ€ringute jĂ”udlus. VĂ€henenud on automaatselt rakendatud piirangud andmebaasi analĂŒĂŒsi kestusele, vĂ€ltides liiga pikka töötlusaega suurte andmebaaside puhul. Lisatud on uus bittmask âPRAGMA optimize(0x10000)â, mis kontrollib eraldi vĂ€rskendusi kĂ”igis tabelites. Tagatud on automaatne tabelite uuesti analĂŒĂŒsimine, kus puuduvad kirjed sqlite_stat1.
- SQL-funktsioonile strftime() on lisatud toimetusi %G, %g, %U ja %V toetuseks.
- SQL-funktsioonides, mis tegelevad kuupÀevade ja aegadega, on lisatud uusi modifikaatoreid ceiling ja floor, et hallata ebaselgeid kuupÀevi, mis tekivad kuupÀevade nihutamisel teatud arvu kuude vÔi aastate vÔrra. Modifikaatorid utc ja localtime ignoreeritakse, kui SQLite'l on teada, et aeg on juba UTC- vÔi localtime-esitusel.
- KĂŒsimuste planeerijasse on tehtud optimeerimisi. INSERT-lauseid, mis sisaldavad tuhandeid vÀÀrtusi VALUES-sektsioonis, töötlus on vaikesĂ€tetena lubatud optimeerimine "VALUES-as-coroutine", mis vĂ”imaldab umbes kaks korda kiirendada selliste lausete parsimist ja kaks korda vĂ€hendada mĂ€lu tarbimist. KĂŒsimistele, mis on kujul "SELECT count(DISTINCT col) FROM ...", on lubatud indeksite kasutamine, isegi kui indeksi kirje suurus ei ole vĂ€iksem kui tabeli kirje suurus. Parandatud on loogikat, mis mÀÀratleb olukordi, kus SQL-funktsioonide argumentides on konstantsed vÀÀrtused. Kasutusele on vĂ”etud push-down optimeerimine WHERE-lause jaoks, mis sisaldab seoseid mittekuuluvate alampĂ€ringutega.
- Steki ĂŒletamise töötlemise loogika on muudetud â kui parser tuvastab mĂ€lupuuduse steigis, proovib see nĂŒĂŒd broneerida tĂ€iendavat mĂ€lu kuhjast, selle asemel et anda veateade "parser stack overflow".
- JSON5-s on lubatud juhtivate mĂ€rkide mÀÀramine JSON stringiliteraalides. Muudetud on tegurite "->" ja ">>" tööloogikat, kui paremal kĂŒljel olev stringoperand sisaldab ainult numbreid (sarnaselt PostgreSQL-iga, nĂŒĂŒd töödeldakse neid opereerivaid stringe kui stringe).
- Tabeli veergude DEFAULT vÀÀrtuses on lubatud suured heksadecimaalsed literaalid.
Allikas: opennet.ru
