Ukukhishwa kwe-SQLite 3.40, i-DBMS engasindi eklanywe njengomtapo wolwazi we-plug-in, kushicilelwe. Ikhodi ye-SQLite isatshalaliswa esizindeni somphakathi, i.e. ingasetshenziswa ngaphandle kwemikhawulo futhi mahhala nganoma iyiphi injongo. Usekelo lwezezimali lwabathuthukisi be-SQLite luhlinzekwa yinhlangano edalwe ngokukhethekile, ehlanganisa izinkampani ezifana ne-Adobe, i-Oracle, i-Mozilla, i-Bentley ne-Bloomberg.
Izinguquko eziyinhloko:
- Kusetshenziswe ikhono lokuhlola lokuhlanganisa i-SQLite ibe ikhodi ye-WebAssembly emaphakathi engasebenza kusiphequluli sewebhu futhi ifanele ukuhlela umsebenzi ngesizindalwazi kusuka kuzinhlelo zokusebenza zewebhu ngolimi lwe-JavaScript. Abathuthukisi bewebhu banikezwa isixhumi esibonakalayo esisezingeni eliphezulu esigxile entweni ukuze sisebenze nedatha ngesitayela se-sql.js noma i-Node.js, esonga nge-C API yezinga eliphansi, kanye ne-API esekelwe kumshini we-Web Worker okuvumela ukuthi ukudala izibambi ezingavumelaniyo ezisebenza emicu ehlukene. Idatha egcinwa izinhlelo zokusebenza zewebhu kunguqulo ye-WASM ye-SQLite ingagcinwa ohlangothini lweklayenti kusetshenziswa i-OPFS (Origin-Private FileSystem) noma i-window.localStorage API.
- Isandiso sokubuyisela sengeziwe, siklanyelwe ukubuyisela idatha kumafayela owonakele kusizindalwazi. Isixhumi esibonakalayo somugqa womyalo sisebenzisa umyalo othi ".recover" ukuze ubuyisele.
- Ukusebenza komhleli wemibuzo okuthuthukisiwe. Imikhawulo yasuswa lapho kusetshenziswa izinkomba ezinamathebula anamakholomu angaphezu kuka-63 (ngaphambilini, ukufakwa ohlwini kwakungasetshenziswanga emisebenzini enamakholomu inombolo yawo ye-ordinal eyeqe 63). Ukukhonjwa okuthuthukisiwe kwamanani asetshenziswa kuzinkulumo. Iyeke ukulayisha izintambo ezinkulu nama-blobs kudiski lapho icutshungulwa NOT NULL futhi IS NULL opharetha. Ukwenziwa kwezinto ezibonakalayo okungabaliwe lapho ukuskena okuphelele kwenziwa kanye kuphela.
- Ku-codebase, esikhundleni sokusebenzisa uhlobo lwe-"char *", uhlobo oluhlukile lwe-sqlite3_filename lusetshenziselwa ukumela amagama wamafayela.
- Kwengezwe umsebenzi wangaphakathi we-sqlite3_value_encoding().
- Kwengezwe imodi ye-SQLITE_DBCONFIG_DEFENSIVE, evimbela ukushintsha inguqulo ye-schema sesitoreji.
- Ukuhlola okwengeziwe kungeziwe ekusetshenzisweni kwepharamitha ethi "PRAGMA integrity_check". Isibonelo, amathebula angenayo imfanelo ye-STRICT akumele aqukathe amanani ezinombolo kumakholomu angu-TEXT kanye namanani eyunithi yezinhlamvu ezinezinombolo kumakholomu angu-NUMERIC. Futhi kwengezwe hlola ukunemba kokuhleleka kwemigqa kumathebula ngesibaluli esithi "NGAPHANDLE UROWID".
- Inkulumo ethi "VACUUM INTO" ihlonipha izilungiselelo ze-"PRAGMA synchronous".
- Kwengezwe inketho yokwakha engu-SQLITE_MAX_ALLOCATION_SIZE ukuze ukhawulele usayizi webhulokhi lapho unikeza inkumbulo.
- I-algorithm yokukhiqiza izinombolo mbumbulu ezakhelwe ku-SQLite isusiwe ekusebenziseni i-RC4 stream cipher yayiswa ku-Chacha20.
- Kuvunyelwe ukusebenzisa izinkomba ezinegama elifanayo kuma-schema wedatha ahlukene.
- Ukuthuthukiswa kokusebenza kwenziwe ukuze kwehliswe umthwalo ku-CPU cishe ngo-1% phakathi nomsebenzi ojwayelekile.
Source: opennet.ru