UppslÀpp av databashanteraren SQLite 3.40

UtgÄvan av SQLite 3.40 har publicerats, en lÀttviktsdatabas som Àr formaterad som ett bibliotek. Koden för SQLite distribueras som offentlig egendom (public domain), vilket innebÀr att den kan anvÀndas utan begrÀnsningar och kostnadsfritt för alla ÀndamÄl. Den finansiella stödet för SQLite-utvecklarna ges av ett sÀrskilt bildat konsortium som inkluderar företag som Adobe, Oracle, Mozilla, Bentley och Bloomberg.

Huvudsakliga förÀndringar:

  • En experimentell funktion för att kompilera SQLite till WebAssembly-kod har implementerats, vilket möjliggör körning i webblĂ€sare och Ă€r lĂ€mplig för att arbeta med databaser frĂ„n web-applikationer i JavaScript. Webbprogrammerare fĂ„r ett hög nivĂ„, objektorienterat grĂ€nssnitt för att arbeta med data i stil med sql.js eller Node.js, en wrapper över ett lĂ„gnivĂ„ C API och ett API baserat pĂ„ Web Worker-mekanismen, som gör det möjligt att skapa asynkrona hanterare som körs i separata trĂ„dar. Data som web-applikationer sparar i WASM-versionen av SQLite kan lagras pĂ„ klientsidan med hjĂ€lp av OPFS (Origin-Private FileSystem) eller API window.localStorage.
  • Ett recovery-tillĂ€gg har lagts till, avsett för att Ă„terstĂ€lla data frĂ„n skadade databasfiler. I kommandoradsgrĂ€nssnittet anvĂ€nds kommandot " .recover " för Ă„terstĂ€llning.
  • Arbetet med frĂ„geplaneraren har förbĂ€ttrats. BegrĂ€nsningar vid anvĂ€ndning av index med tabeller som har fler Ă€n 63 kolumner har tagits bort (tidigare tillĂ€mpades inte indexering vid operationer med kolumner vars ordningstal översteg 63). Indexeringen av vĂ€rden som anvĂ€nds i uttryck har förbĂ€ttrats. Laddning av stora rader och blobbar frĂ„n disk vid bearbetning av operatorer som NOT NULL och IS NULL har upphört. Materialisering av vyer för vilka en fullstĂ€ndig skanning endast görs en gĂ„ng har uteslutits.
  • I kodbasen har en separat typ för att representera filnamn, sqlite3_filename, anvĂ€nts istĂ€llet för typen "char *".
  • En intern funktion, sqlite3_value_encoding(), har lagts till.
  • LĂ€get SQLITE_DBCONFIG_DEFENSIVE har lagts till, vilket förbjuder Ă€ndring av versionen av databasens lagringsschema.
  • I genomförandet av parametern "PRAGMA integrity_check" har ytterligare kontroller lagts till. Till exempel fĂ„r tabeller utan tecknet STRICT inte innehĂ„lla numeriska vĂ€rden i kolumner av typen TEXT och strĂ€ngvĂ€rden med siffror i kolumner av typen NUMERIC. En kontroll av korrekt ordning pĂ„ rader i tabeller med tecknet "WITHOUT ROWID" har ocksĂ„ lagts till.
  • I uttrycket "VACUUM INTO" har instĂ€llningarna "PRAGMA synchronous" beaktats.
  • En byggalternativ SQLITE_MAX_ALLOCATION_SIZE har lagts till, som gör det möjligt att begrĂ€nsa storleken pĂ„ block vid minnesallokering.
  • Den inbyggda algoritmen för att generera pseudotillfĂ€lliga nummer i SQLite har bytt frĂ„n att anvĂ€nda strömmande chiffret RC4 till Chacha20.
  • AnvĂ€ndning av index med samma namn i olika datamodeller har tillĂ„tits.
  • PrestandaförbĂ€ttringar har genomförts, vilket minska CPU-belastningen med cirka 1% vid typisk aktivitet.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster