SQLite 3.53.0

SQLite 3.53.0 SQLite 3.53.0

9. aprīlī tika izlaists 3.53.0 kompaktais, daudzplatformu iekļautās DBMS SQLite. Projekta kods ir rakstīts C valodā un izplatīts kā publiskais īpašums (public domain).

Izmaiņas:

  • Kļūda labota WAL-reset datu bāzes bojājuma kļūda. Skatiet iepriekšējo ziņu SQLite 3.51.3 ar labojumu iespējamai datu bāzes bojāšanai WAL režīmā.
  • Pievienota SQL vaicājumu rezultātu formatēšanas bibliotēka Query Result Formatter (QRF) lai nodrošinātu ērtu lasīšanu uz ekrāna ar fiksētās platuma fontu.
  • Ir pievienota metode format uz TCL saskarnei lai piekļūtu QRF no TCL.
    • QRF tagad tiek izmantots konsoles utilītē sqlite rezultātu formatēšanai, uzlabojot to attēlošanu.
  • Jaunas SQL valodas iespējas:
    • Uzlabotas komandas iespējas ALTER TABLE lai nodrošinātu iespēju pievienot un dzēst NOT NULL un CHECK ierobežojumus.
    • Operators REINDEX EXPRESSIONS veic izteiksmju indeksa pārvietošanu. Noderīgi lai atjaunotu novecojušos izteiksmju indeksus.
    • Tagad TEMP izsistie var mainīt un\/vai pieprasīt datus no galvenās shēmas tabulām.
    • Uzlabota komanda VACUUM INTO: ja tiek izmantots kā mērķa adrese faila nosaukumā URI formātā, kas satur pieprasījuma parametrus reserve=N (kur N ir skaitlis no 0 līdz 255), rezerves apjoms izveidotajai datu bāzes kopijai tiek noteikts kā N.
  • Pievienotas jaunas SQL funkcijas:
  • Atjauninājumi konsoles utilītē:
    • Izteiksmīgas uzlabojumi komandas .mode.
    • Pateicoties QRF pagarinājumam uzlabota rezultātu formatēšana. Piemēram, skaitļi tagad pa noklusējumu tiek izmērīti labajā pusē režīmā tabulas izvade.
    • QRF tagad pa noklusējumu tiek izmantots interaktīvi lietojot konsoles utilītu, lai attēlotu vaicājumu rezultātus blokos, ko veidojusi Unicode blokas zīmes, ievērojami uzlabojot lasāmību. Novecojusī izvades forma tiek izmantota partiju izpildē, lai nodrošinātu saderību.
    • Vienkārši (neaizvērti ar pēdiņām) semikoli beigās komandām ar punktu tiek ignorēti bez brīdinājuma.  Tas ir iespējamais nesaderība!
    • Kļūdas labotas komandām .testcase un .check. Tagad tās patiešām darbojas un tiek izmantotas skriptos, kas ietilpst standartizētajā SQLite testu kopā, kas ietver avotu kodus.
    • Komandrindas argumenti, kas atbilst *.sql vai *.txt paraugiem un ir nepustiem failu nosaukumiem, tiek nolasīti un interpretēti kā skripti, kas satur SQL operatorus un\/vai [komandas ar punktu]((https://sqlite.org/cli.html#dotcmd).
    • Tagad komandai .timer kā argumentu var norādīt once, lai taimeris tiktu aktivizēts tikai nākamā SQL vaicājuma izpildes laikā.
    • Jaunais parametrs —timeout S komandai .progress izraisa SQL vaicājumu izpildes pārtraukšanu pēc S sekundēm.
    • Komanda .indexes ir mainīta tā, ka arguments PATTERN tagad atbilst indeksa nosaukumam, nevis indeksētās tabulas nosaukumam (pateicoties tam, arguments PATTERN ir kļuvis patiesi noderīgs). Turklāt komandai .indexes ir pievienotas vairākas jaunas opcijas.
  • Uzlabojumi C API:
  • Uzlabojumi vaicājumu plānotājā:
    • EXCEPT, INTERSECT un UNION vienmēr izmanto sortēšanas un apvienošanas algoritmu, jo tas gandrīz vienmēr darbojas ātrāk nekā hash tabulu izmantošana.
    • Uzlabojumi savienojuma secības izvēles mehānismā, veicot plašus daudzpusējus savienojumus zvaigžņu shēmā.
    • Uzlabota EXISTS pārvēršanas optimizācija JOIN, lai pievienotie JOIN apstākļi nebūtu obligāti savienošanas iekšējos ciklos, ja visu atkarību pārvēršana EXISTS uz JOIN notiek ārējos ciklos.
    • Uzlabota omit-noop-join optimizācija, lai tā varētu izlaist savienojuma virkni, kas neietekmē rezultātu.
    • Vaicājumu optimizācija, kas izmanto GROUP BY e1 ORDER BY e2, kur e1 un e2 ir identiski, izņemot šķirošanas secību ASC/DESC, izmantojot vienu indeksu.
    • DISTINCT operatora optimizācija virtuālajās tabulās gadījumos, kad vaicājuma rezultātu kopums nesakrīt ar ORDER BY nosacījumu.
  • No sesijas paplašināšana pievienoti jauni saskarnes, kas ļauj lietojumprogrammai veikt izmaiņas pa vienai objektiem sqlite3_changegroup:
  • Uzlabojumi skaitļu ar peldošo komatu ↔ teksts.
    • Kods pilnībā pārstrādāts, lai uzlabotu veiktspēju.
    • Tagad noklusējuma kārtulēšana notiek līdz 17 significējošām cipariem, nevis 15, kā tas bija visās iepriekšējās versijās. Ja nepieciešams, šo vērtību var mainīt, izmantojot funkciju sqlite3_db_config ar opciju SQLITE_DBCONFIG_FP_DIGITS (skat. tur punktu 6g iepriekš).
  • Pievienota iespēja pašatjaunojoša indeksa lai atrisinātu problēmu novecojušos izteiksmju indeksus.
  • Konsoles rīks sqlite3_rsync tika pievienota opcija -p|—port.
  • Atbalsts tika pārtraukts Windows RT.
  • JavaScript/WASM
    • Tika pievienota VFS opfs-wl, funkcionāli identisks opfs, bet izmantojot Web Locks bloķēšanai, kas nodrošina vienlīdzīgāku bloķējumu sadalījumu nekā opfs protokols. opfs-wl prasa Atomics.waitAsync() funkciju, tāpēc, lai tas darbotos, ir vajadzīgas jaunāki pārlūkprogrammu izdevumi nekā opfs.

Avots: linux.org.ru

Iegādājieties uzticamu tīmekļa hostingu ar DDoS aizsardzību, VPS VDS serveriem 🔥 Iegādājieties uzticamu tīmekļa hostingu ar DDoS aizsardzību, VPS VDS serveriem | ProHoster