Gefa út DBMS SQLite 3.31 með stuðningi fyrir myndaða dálka

birt sleppa SQLite 3.31.0, létt DBMS hannað sem viðbótasafn. SQLite kóðanum er dreift sem almenningseign, þ.e. má nota án takmarkana og ókeypis í hvaða tilgangi sem er. Fjárhagslegur stuðningur við SQLite forritara er veittur af sérstaklega stofnuðu hópi, sem inniheldur fyrirtæki eins og Adobe, Oracle, Mozilla, Bentley og Bloomberg.

Helstu breytingar:

  • Bætt við stuðningi myndaðir dálkar (reiknaðar dálkar), sem gerir þér kleift að skilgreina dálk þegar þú býrð til töflu þar sem gildi hennar er sjálfkrafa reiknað út frá innihaldi annars dálks. Dálkarnir sem myndast geta annað hvort verið sýndar (myndaðir á flugi með hverjum aðgangi) eða geymdir í gagnagrunninum (vistaðir í hvert skipti sem tengdir dálkar eru uppfærðir). Innihald myndaðra dálka er aðeins tiltækt í lesham (breytingar eru aðeins gerðar með því að breyta gildinu í öðrum dálki sem tekur þátt í útreikningnum). Til dæmis:

    BÚA TIL TÖFLU t1(
    HEILTALA AÐALLYKILL,
    b INT,
    c TEXTI,
    d INT KOMIÐ ALLTAF TIL SEM (a*abs(b)) VIÐGERÐ,
    e TEXTI ALLTAF BÚIN TIL SEM (substr(c,b,b+1)) GEYMÐUR
    );

  • PRAGMA bætt við traust_skema, stilling SQLITE_DBCONFIG_TRUSTED_SCHEMA og samsetningarvalkosturinn „-DSQLITE_TRUSTED_SCHEMA“, sem gerir þér kleift að stjórna innlimun verndar gegn árásir með breytingu á gagnaskema í gagnagrunninum. Virk vernd takmarkar notkun SQL aðgerða (ekki merkt SQLITE_INNOCUOUS) í kveikjum, skoðunum, CHECK og DEFAULT yfirlýsingum, vísitölum og mynduðum dálkum. Notkun sýndartafla í kveikjum og skoðunum er einnig óvirk nema sýndartöflunni sé sérstaklega lýst yfir með SQLITE_VTAB_INNOCUOUS fánanum.
  • Útfærði hæfileikann til að úthluta eiginleikum til SQL aðgerðir sem skilgreindar eru í forritum SQLITE_INNNOCUOUS (skaðlausar aðgerðir sem eru ekki háðar ytri breytum og ekki hægt að nota til að framkvæma illgjarnar aðgerðir) og SQLITE_DIRECTONLY (aðeins beint símtal í SQL fyrirspurnum, án möguleika á að nota í kveikjum, skoðunum og skýringarmyndum fyrir uppbyggingu gagna);
  • Bætt við einingu uuid með framkvæmd aðgerða til að vinna úr UUID (RFC-4122);
  • PRAGMA bætt við hard_heap_limit og virka sqlite3_hard_heap_limit64() til að stjórna hámarks haugstærð;
  • Í PRAGMA function_list bætt úttak af gerð, eiginleikum og fjölda frumbreyta hvers falls;
  • Til sýndartöflu DBSTAT bætt við gagnasöfnunarhamur;
  • sqlite3_open_v2() útfærir SQLITE_OPEN_NOFOLLOW valkostinn, sem gerir þér kleift að slökkva á opnun táknrænna tengla;
  • Fyrir rök PATH, send til JSON aðgerðir, bætti við stuðningi við „#-N“ fylkismerki;
  • Í minnisdreifingarkerfinu líta til hliðar stuðningur við tvo aðskilda minnisgeyma hefur verið útfærður, sem hver um sig er hægt að nota til að úthluta blokkum af mismunandi stærðum (aðskilnaður gerir þér kleift að auka notkun útlitskerfisins, en minnkar stærð biðminni sem úthlutað er til hverrar tengingar úr 120 í 48 KB);
  • PRAGMA stuðningi hefur verið hætt eldri_skráarsnið, sem var ósamrýmanlegt VACUUM, mynduðum dálkum og lækkandi vísitölum (hægt er að skila eldri sniði með SQLITE_DBCONFIG_LEGACY_FILE_FORMAT fánanum í sqlite3_db_config()).

Heimild: opennet.ru

Bæta við athugasemd