SQLite 3.31 andmebaasihalduri vÀljaanne, mis toetab genereeritud veerge

Avaldatud vabastus SQLite 3.31.0, kergekaaluline andmebaas, mis on esitatud plugina raamatukoguna. SQLite kood on vabalt kÀttesaadav avaliku omandi tingimustes, st seda saab kasutada piiranguteta ja tasuta igasugustel eesmÀrkidel. SQLite arendajate rahalist toetust pakub spetsiaalselt loodud konsortsium, kuhu kuuluvad sellised ettevÔtted nagu Adobe, Oracle, Mozilla, Bentley ja Bloomberg.

Peamised muudatused:

  • Lisatud tugi generaatorveergudele (arvutatud veergudena), mis vĂ”imaldavad tabeli loomisel mÀÀrata veeru, mille vÀÀrtus arvutatakse automaatselt muude veergude sisu pĂ”hjal. Generatiivsed veerud vĂ”ivad olla kas virtuaalsed (moodustatakse iga pĂ€ringuga) vĂ”i salvestatud andmebaasi (salvestatakse iga seotud veeru vĂ€rskendamisel). Generatiivsete veergude sisu on saadaval ainult lugemisreĆŸiimis (muudatused toimub ainult teise veeru vÀÀrtuse muutmise kaudu, mis on arvutamisel kaasatud). NĂ€iteks:

    CREATE TABLE t1(
    a INTEGER PRIMARY KEY,
    b INT,
    c TEXT,
    d INT GENERATED ALWAYS AS (a*abs(b)) VIRTUAL,
    e TEXT GENERATED ALWAYS AS (substr(c,b,b+1)) STORED
    );

  • Lisatud PRAGMA trusted_schema, seade SQLITE_DBCONFIG_TRUSTED_SCHEMA ja kokkupanemise vĂ”imalus «-DSQLITE_TRUSTED_SCHEMA», mis vĂ”imaldab hallata kaitse aktiveerimist rĂŒnnakute andmebaasi skeemi muutmise kaudu. Aktiivse kaitse korral piiratakse SQL-funktsioonide kasutamist (millel ei ole mĂ€rgitud SQLITE_INNOCUOUS) trigerites, vaadetes, CHECK- ja DEFAULT-vĂ€ljendites, indeksites ja generatiivsetes veergudes. Kaasa arvatud keelatakse virtuaalsete tabelite kasutamine trigerites ja vaadetes, kui virtuaalne tabel ei ole selgelt deklareeritud SQLITE_VTAB_INNOCUOUS lipuga.
  • Rakendustes SQL-funktsioonidele on rakendatud vĂ”imalus mÀÀrata omadused SQLITE_INNOCUOUS (kahjutud funktsioonid, mis ei sĂ”ltu vĂ€listest parameetritest ja ei saa kasutada kurjategijate tegevuseks) ja SQLITE_DIRECTONLY (ainult otse kutsumine SQL-pĂ€ringutes, ilma vĂ”imaluseta kasutada trigerites, vaadetes ja andmestruktuuri skeemides);
  • Lisatud moodul uuid UUID-i töötlemise funktsioonide rakendamisega (RFC-4122);
  • Lisatud PRAGMA hard_heap_limit ja funktsioon sqlite3_hard_heap_limit64() maksimaalse kihi suuruse haldamiseks;
  • PRAGMA-s function_list on lisatud iga funktsiooni tĂŒĂŒbi, omaduste ja argumentide arvu vĂ€ljund;
  • DBSTAT virtuaaltabelis on lisatud andmete agregatsiooni reĆŸiim;
  • sqlite3_open_v2() on rakendatud valik SQLITE_OPEN_NOFOLLOW, mis vĂ”imaldab keelata sĂŒmboolsete linkide avamise;
  • JSON-funktsioonidesse edastatava argumendi jaoks on lisatud toetus massiivide sĂŒntaksile «#-N»; PATH,
  • MĂ€lu jaotamise sĂŒsteemis lookaside rakendatakse kahe eraldi mĂ€epooli toetust, millest igaĂŒht saab kasutada erineva suurusega plokkide eraldamiseks (eraldamine laiendab lookaside sĂŒsteemi rakendamise vĂ”imalusi, samas vĂ€hendades igale ĂŒhendusele eraldatava puhveri suurust 120 KB-lt 48 KB-le);
  • PRAGMA toe lĂ”petamine legacy_file_format, mis ei olnud ĂŒhilduv VACUUM'i, genereeritud veergude ja kahanevate indeksitega (pĂ€randvormingut saab taaskĂ€ivitada lippu SQLITE_DBCONFIG_LEGACY_FILE_FORMAT kasutades sqlite3_db_config() funktsioonis).

Allikas: opennet.ru

Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster