Sakin DBMS SQLite 3.31 tare da goyan bayan ginshiƙan da aka ƙirƙira

aka buga saki SQLite 3.31.0, DBMS mai sauƙi wanda aka tsara azaman ɗakin karatu na toshewa. Ana rarraba lambar SQLite azaman yanki na jama'a, watau. ana iya amfani da shi ba tare da hani ba kuma kyauta don kowane dalili. Tallafin kuɗi na masu haɓaka SQLite yana samuwa ta hanyar haɗin gwiwa na musamman da aka ƙirƙira, wanda ya haɗa da kamfanoni kamar Adobe, Oracle, Mozilla, Bentley da Bloomberg.

Main canji:

  • Ƙara goyon baya ginshiƙan da aka haifar (ƙididdigar ginshiƙai), waɗanda ke ba ka damar ayyana ginshiƙi lokacin da ka ƙirƙiri tebur wanda ƙimarsa ta atomatik ana ƙididdige shi bisa abubuwan da ke cikin wani shafi. ginshiƙan da aka ƙirƙira na iya zama ko dai kama-da-wane (wanda aka ƙirƙira akan tashi tare da kowane damar) ko adana su a cikin ma'ajin bayanai (an adana duk lokacin da aka sabunta ginshiƙan masu alaƙa). Abubuwan da ke cikin ginshiƙan da aka ƙirƙira suna samuwa ne kawai a yanayin karantawa (ana yin sauye-sauye ta hanyar gyare-gyaren ƙima a cikin wani shafi da ke cikin lissafin). Misali:

    Ƙirƙiri TABLE t1(
    maɓalli PRIMARY INTEGER,
    b INT,
    c RUBUTU,
    d INT GASKIYA KOYAUSHE AS (a*abs(b)) GASKIYA,
    e RUBUTU DA AKE GUDANARWA KAMAR YADDA (substr(c,b,b+1)) AKE TSIRA
    );

  • An ƙara PRAGMA amintaccen_schema, saitin SQLITE_DBCONFIG_TRUSTED_SCHEMA da zaɓin taron "-DSQLITE_TRUSTED_SCHEMA", wanda ke ba ku damar sarrafa haɗar kariya daga hare-hare ta hanyar gyaggyarawa tsarin bayanan da ke cikin rumbun adana bayanai. Kariya mai aiki yana ƙuntata amfani da ayyukan SQL (ba a yiwa alama SQLITE_INNOCUOUS) a cikin abubuwan jawo, ra'ayoyi, DUBI da maganganun DEFAULT, fihirisa, da ginshiƙai da aka ƙirƙira. Hakanan ba a kashe amfani da tebur mai kama-da-wane a cikin abubuwan da ke haifar da gani da gani sai dai in ba a ayyana tebirin kama-da-wane da tutar SQLITE_VTAB_INNOCUOUS.
  • An aiwatar da ikon sanya kaddarorin ga ayyukan SQL da aka ayyana a aikace-aikace SQLITE_INNOCUOUS (ayyukan da ba su da lahani waɗanda ba su dogara da sigogi na waje ba kuma ba za a iya amfani da su ba don yin ayyukan mugunta) da SQLITE_DIRECTONLY (Kira kai tsaye kawai a cikin tambayoyin SQL, ba tare da yuwuwar yin amfani da abubuwan jawo, ra'ayoyi da zane-zanen tsarin bayanai ba);
  • Ƙaddamar da tsarin ayyu tare da aiwatar da ayyuka don sarrafa UUID (RFC-4122);
  • An ƙara PRAGMA hard_heap_limit da aiki sqlite3_hard_heap_limit64() don sarrafa matsakaicin girman girman;
  • A cikin PRAGMA function_list ƙarin fitarwa na nau'in, kaddarorin da adadin muhawara na kowane aiki;
  • Zuwa DBSTAT tebur ya kara da cewa yanayin tara bayanai;
  • sqlite3_open_v2 () yana aiwatar da zaɓi na SQLITE_OPEN_NOFOLLOW, wanda ke ba ku damar kashe buɗe hanyoyin haɗin gwiwa;
  • Domin jayayya PATH, an wuce zuwa ayyukan JSON, ƙarin tallafi don bayanin tsararrun "#-N";
  • A cikin tsarin rarraba ƙwaƙwalwar ajiya kallon gefe Tallafi na wuraren ƙwaƙwalwa guda biyu daban daban an aiwatar da shi, kowanne za'a iya amfani dashi don raba abubuwan da aka yiwa daban-daban, yayin rage girman da buffer kasaftawa ga kowane haɗin daga 120 zuwa 48 KB);
  • An dakatar da tallafin PRAGMA Legacy_file_format, wanda bai dace da VACUUM, ginshiƙai da aka ƙirƙira, da fihirisa masu gangarowa (ana iya dawo da tallafin tsarin gado ta tutar SQLITE_DBCONFIG_LEGACY_FILE_FORMAT a cikin sqlite3_db_config()).

source: budenet.ru

Add a comment