Lëshimi i DBMS SQLite 3.31 me mbështetje për kolonat e gjeneruara

Publikuar lëshimi SQLite 3.31.0, një DBMS të lehtë, e dizajnuar si një bibliotekë të lidhur. Kodi i SQLite shpërndahet si pronë publike, dmth. mund të përdoret pa liri dhe pa pagesë për çdo qëllim. Mbështetje financiare për zhvilluesit e SQLite ofrohet nga një konsorcium i krijuar posaçërisht, i përbërë nga kompani si Adobe, Oracle, Mozilla, Bentley dhe Bloomberg.

Main ndryshime:

  • Shtuar mbĂ«shtetje kolonat e gjeneruara (kolonave tĂ« llogaritura), tĂ« cilat lejojnĂ« gjatĂ« krijimit tĂ« tabelĂ«s pĂ«rcaktimin e njĂ« koloni, vlera e tĂ« cilĂ«s llogaritet automatikisht nĂ« bazĂ« tĂ« pĂ«rmbajtjes sĂ« njĂ« kolone tjetĂ«r. Kolonat e gjeneruara mund tĂ« jenĂ« si virtuale (tĂ« formuara nĂ« kohĂ« reale sa herĂ« qĂ« aksesohet), ashtu edhe tĂ« ruajtura nĂ« bazĂ«n e tĂ« dhĂ«nave (ruhen me çdo pĂ«rditĂ«sim tĂ« kolonave tĂ« lidhura). PĂ«rmbajtja e kolonave tĂ« gjeneruara Ă«shtĂ« e qasshme vetĂ«m nĂ« modin e leximit (ndryshimet bĂ«hen vetĂ«m pĂ«rmes modifikimit tĂ« vlerĂ«s nĂ« kolonĂ«n tjetĂ«r, e cila Ă«shtĂ« e angazhuar nĂ« llogaritje). Shembuj:

    KRIJO TABELË t1(
    a INTEGER ÇELSI KRYESOR,
    b INT,
    c TEKST,
    d INT GJENERUAR KËRKESË NË (a*abs(b)) VIRTUAL,
    e TEKST GJENERUAR KËRKESË NË (substr(c,b,b+1)) TË RUJTUR
    );

  • Shtuar PRAGMA trusted_schema, konfigurimi SQLITE_DBCONFIG_TRUSTED_SCHEMA dhe opsioni i ndĂ«rtimit “-DSQLITE_TRUSTED_SCHEMA”, qĂ« lejon menaxhimin e aktivizimit tĂ« mbrojtjes nga e sulmeve nĂ«pĂ«rmjet modifikimit tĂ« skemĂ«s sĂ« tĂ« dhĂ«nave nĂ« bazĂ«n e tĂ« dhĂ«nave. Me mbrojtjen aktive kufizohet pĂ«rdorimi i funksioneve SQL (tĂ« papĂ«rcaktuara si SQLITE_INNOCUOUS) nĂ« trigera, pamje, shprehje CHECK dhe DEFAULT, indekse dhe kolonat e gjeneruara. Ndalohet gjithashtu pĂ«rdorimi i tabelave virtuale nĂ« trigera dhe pamje, nĂ«se tabela virtuale nuk shpallet qartĂ« me flamurin SQLITE_VTAB_INNOCUOUS.
  • ËshtĂ« implementuar mundĂ«sia pĂ«r t'iu caktuar disa funksioneve SQL tĂ« aplikacioneve pronat SQLITE_INNOCUOUS (funksione tĂ« padĂ«mshme, tĂ« cilat nuk varen nga parametra tĂ« jashtĂ«m dhe nuk mund tĂ« pĂ«rdoren pĂ«r kryerjen e veprimeve tĂ« dĂ«mshme) dhe SQLITE_DIRECTONLY (thjesht thirrje direkte nĂ« kĂ«rkesat SQL, pa mundĂ«si pĂ«rdorimi nĂ« trigera, pamje dhe skemat e strukturĂ«s sĂ« tĂ« dhĂ«nave);
  • Shtuar modul uuid me implementimin e funksioneve pĂ«r trajtimin e UUID (RFC-4122);
  • Shtuar PRAGMA hard_heap_limit dhe funksioni sqlite3_hard_heap_limit64() pĂ«r menaxhimin e madhĂ«sisĂ« maksimale tĂ« kupĂ«s;
  • NĂ« PRAGMA function_list shtuar output i tipit, pronave dhe numrit tĂ« argumenteve tĂ« çdo funksioni;
  • NĂ« tabelĂ«n virtuale DBSTAT Ă«shtĂ« shtuar reimi i agregimit tĂ« tĂ« dhĂ«nave;
  • NĂ« sqlite3_open_v2() Ă«shtĂ« implementuar opsioni SQLITE_OPEN_NOFOLLOW, i cili ndalon hapjen e lidhjeve simbolike;
  • PĂ«r argumentin pĂ«r, i kaluar nĂ« funksionet JSON, Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r notacionin e array-eve “#-N”;
  • NĂ« sistemin e shpĂ«rndarjes sĂ« memories lookaside Ă«shtĂ« realizuar mbĂ«shtetje pĂ«r dy grupe tĂ« veçanta memorie, secili prej tĂ« cilĂ«ve mund tĂ« pĂ«rdoret pĂ«r ndarjen e blloqeve tĂ« madhĂ«sive tĂ« ndryshme (ndarja lejon zgjerimin e pĂ«rdorimit tĂ« sistemit lookaside, duke reduktuar gjithashtu madhĂ«sinĂ« e tamponit tĂ« ndarĂ« pĂ«r çdo lidhje nga 120 nĂ« 48 KB);
  • MbĂ«shtetja pĂ«r PRAGMA Ă«shtĂ« ndalur legacy_file_format, e cila ishte e pavendosur me VACUUM, kolonat e gjeneruara dhe indekset nĂ« rĂ«nie (mbĂ«shtetja pĂ«r formatin e vjetĂ«r mund tĂ« rikthehet pĂ«rmes flamurit SQLITE_DBCONFIG_LEGACY_FILE_FORMAT nĂ« sqlite3_db_config()).

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster